wtf-p 0.7.3 → 0.8.0

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 (241) hide show
  1. package/README.md +16 -12
  2. package/bin/commands/install-logic.js +1 -1
  3. package/bin/lib/adapter-compiler.js +175 -56
  4. package/bin/lib/clio-registration.js +127 -36
  5. package/bin/lib/manifest.js +11 -3
  6. package/bin/uninstall.js +3 -2
  7. package/package.json +1 -1
  8. package/protocol/actions/research-gap.json +1 -1
  9. package/protocol/roles/research-synthesizer.md +1 -1
  10. package/protocol/skills/wtfp-plan-section/references/actions.md +1 -1
  11. package/protocol/skills/wtfp-research-literature/references/actions.md +1 -1
  12. package/protocol/skills/wtfp-write-section/references/actions.md +1 -1
  13. package/protocol/workflows/plan-section.md +3 -2
  14. package/protocol/workflows/research-gap.md +2 -2
  15. package/protocol/workflows/write-section.md +1 -1
  16. package/vendors/antigravity/.wtfp-generated.json +18 -14
  17. package/vendors/antigravity/actions/research-gap.json +1 -1
  18. package/vendors/antigravity/agents/wtfp-research-synthesizer.md +1 -1
  19. package/vendors/antigravity/commands/wtfp-plan-section.md +3 -2
  20. package/vendors/antigravity/commands/wtfp-write-section.md +1 -1
  21. package/vendors/antigravity/plugin.json +1 -1
  22. package/vendors/antigravity/roles/research-synthesizer.md +1 -1
  23. package/vendors/antigravity/skills/wtfp-plan-section/references/actions.md +1 -1
  24. package/vendors/antigravity/skills/wtfp-research-literature/references/actions.md +1 -1
  25. package/vendors/antigravity/skills/wtfp-write-section/references/actions.md +1 -1
  26. package/vendors/antigravity/tools/README.md +1 -1
  27. package/vendors/antigravity/tools/package.json +1 -0
  28. package/vendors/antigravity/workflows/plan-section.md +3 -2
  29. package/vendors/antigravity/workflows/research-gap.md +2 -2
  30. package/vendors/antigravity/workflows/write-section.md +1 -1
  31. package/vendors/claude/.claude-plugin/marketplace.json +2 -2
  32. package/vendors/claude/.claude-plugin/plugin.json +1 -1
  33. package/vendors/claude/.wtfp-generated.json +33 -29
  34. package/vendors/claude/actions/research-gap.json +1 -1
  35. package/vendors/claude/agents/wtfp-research-synthesizer.md +1 -1
  36. package/vendors/claude/ai.iowarp.clio/agents/wtfp-research-synthesizer.md +1 -1
  37. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/analyze-bib.md +2 -0
  38. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/check-refs.md +2 -0
  39. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/create-outline.md +2 -0
  40. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/execute-outline.md +2 -0
  41. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/help.md +1 -1
  42. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/plan-section.md +5 -2
  43. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/polish-prose.md +2 -0
  44. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/quick.md +2 -0
  45. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/research-gap.md +8 -2
  46. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/review-section.md +2 -0
  47. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/write-section.md +3 -1
  48. package/vendors/claude/commands/plan-section.md +3 -2
  49. package/vendors/claude/commands/research-gap.md +2 -2
  50. package/vendors/claude/commands/write-section.md +1 -1
  51. package/vendors/claude/plugin.json +1 -1
  52. package/vendors/claude/roles/research-synthesizer.md +1 -1
  53. package/vendors/claude/skills/wtfp-plan-section/references/actions.md +1 -1
  54. package/vendors/claude/skills/wtfp-research-literature/references/actions.md +1 -1
  55. package/vendors/claude/skills/wtfp-write-section/references/actions.md +1 -1
  56. package/vendors/claude/tools/README.md +1 -1
  57. package/vendors/claude/tools/package.json +1 -0
  58. package/vendors/claude/workflows/plan-section.md +3 -2
  59. package/vendors/claude/workflows/research-gap.md +2 -2
  60. package/vendors/claude/workflows/write-section.md +1 -1
  61. package/vendors/clio-extension/.wtfp-generated.json +228 -0
  62. package/vendors/clio-extension/actions/add-todo.json +52 -0
  63. package/vendors/clio-extension/actions/analyze-bib.json +97 -0
  64. package/vendors/clio-extension/actions/audit-milestone.json +63 -0
  65. package/vendors/clio-extension/actions/check-refs.json +80 -0
  66. package/vendors/clio-extension/actions/check-todos.json +52 -0
  67. package/vendors/clio-extension/actions/checkpoint.json +76 -0
  68. package/vendors/clio-extension/actions/contribute.json +57 -0
  69. package/vendors/clio-extension/actions/create-outline.json +84 -0
  70. package/vendors/clio-extension/actions/create-poster.json +54 -0
  71. package/vendors/clio-extension/actions/create-slides.json +54 -0
  72. package/vendors/clio-extension/actions/discuss-section.json +76 -0
  73. package/vendors/clio-extension/actions/execute-outline.json +116 -0
  74. package/vendors/clio-extension/actions/export-latex.json +65 -0
  75. package/vendors/clio-extension/actions/help.json +30 -0
  76. package/vendors/clio-extension/actions/insert-section.json +61 -0
  77. package/vendors/clio-extension/actions/list-assumptions.json +35 -0
  78. package/vendors/clio-extension/actions/map-project.json +71 -0
  79. package/vendors/clio-extension/actions/new-paper.json +70 -0
  80. package/vendors/clio-extension/actions/pause-writing.json +71 -0
  81. package/vendors/clio-extension/actions/plan-milestone-gaps.json +57 -0
  82. package/vendors/clio-extension/actions/plan-revision.json +58 -0
  83. package/vendors/clio-extension/actions/plan-section.json +100 -0
  84. package/vendors/clio-extension/actions/polish-prose.json +69 -0
  85. package/vendors/clio-extension/actions/progress.json +51 -0
  86. package/vendors/clio-extension/actions/quick.json +70 -0
  87. package/vendors/clio-extension/actions/remove-section.json +63 -0
  88. package/vendors/clio-extension/actions/report-bug.json +47 -0
  89. package/vendors/clio-extension/actions/request-feature.json +47 -0
  90. package/vendors/clio-extension/actions/research-gap.json +102 -0
  91. package/vendors/clio-extension/actions/resume-writing.json +65 -0
  92. package/vendors/clio-extension/actions/review-section.json +83 -0
  93. package/vendors/clio-extension/actions/settings.json +47 -0
  94. package/vendors/clio-extension/actions/submit-milestone.json +77 -0
  95. package/vendors/clio-extension/actions/update.json +42 -0
  96. package/vendors/clio-extension/actions/verify-work.json +63 -0
  97. package/vendors/clio-extension/actions/write-section.json +115 -0
  98. package/vendors/clio-extension/clio-coder-extension.yaml +53 -0
  99. package/vendors/clio-extension/compatibility/action-availability.json +295 -0
  100. package/vendors/clio-extension/project/schemas/checkpoint.schema.json +102 -0
  101. package/vendors/clio-extension/project/schemas/common.schema.json +33 -0
  102. package/vendors/clio-extension/project/schemas/config.schema.json +69 -0
  103. package/vendors/clio-extension/project/schemas/decisions.schema.json +31 -0
  104. package/vendors/clio-extension/project/schemas/evidence.schema.json +48 -0
  105. package/vendors/clio-extension/project/schemas/manifest.schema.json +102 -0
  106. package/vendors/clio-extension/project/schemas/outline.schema.json +67 -0
  107. package/vendors/clio-extension/project/schemas/section.schema.json +95 -0
  108. package/vendors/clio-extension/project/schemas/source.schema.json +73 -0
  109. package/vendors/clio-extension/project/schemas/state.schema.json +58 -0
  110. package/vendors/clio-extension/project/schemas/validation.schema.json +74 -0
  111. package/vendors/clio-extension/runtime/extension.test.ts +248 -0
  112. package/vendors/clio-extension/runtime/extension.ts +1321 -0
  113. package/vendors/clio-extension/runtime/json-schema.cjs +304 -0
  114. package/vendors/clio-extension/runtime/package.json +3 -0
  115. package/vendors/clio-extension/runtime/write-guard.json +21 -0
  116. package/vendors/clio-extension/skins/wtfp.json +20 -0
  117. package/vendors/codex/plugins/wtfp/.codex-plugin/plugin.json +1 -1
  118. package/vendors/codex/plugins/wtfp/.wtfp-generated.json +17 -13
  119. package/vendors/codex/plugins/wtfp/actions/research-gap.json +1 -1
  120. package/vendors/codex/plugins/wtfp/agents/wtfp-research-synthesizer.toml +1 -1
  121. package/vendors/codex/plugins/wtfp/plugin.json +1 -1
  122. package/vendors/codex/plugins/wtfp/roles/research-synthesizer.md +1 -1
  123. package/vendors/codex/plugins/wtfp/skills/wtfp-plan-section/references/actions.md +1 -1
  124. package/vendors/codex/plugins/wtfp/skills/wtfp-research-literature/references/actions.md +1 -1
  125. package/vendors/codex/plugins/wtfp/skills/wtfp-write-section/references/actions.md +1 -1
  126. package/vendors/codex/plugins/wtfp/tools/README.md +1 -1
  127. package/vendors/codex/plugins/wtfp/tools/package.json +1 -0
  128. package/vendors/codex/plugins/wtfp/workflows/plan-section.md +3 -2
  129. package/vendors/codex/plugins/wtfp/workflows/research-gap.md +2 -2
  130. package/vendors/codex/plugins/wtfp/workflows/write-section.md +1 -1
  131. package/vendors/copilot/.wtfp-generated.json +14 -14
  132. package/vendors/copilot/marketplace.json +2 -2
  133. package/vendors/copilot/plugins/wtfp/.claude-plugin/plugin.json +1 -1
  134. package/vendors/copilot/plugins/wtfp/.wtfp-generated.json +18 -14
  135. package/vendors/copilot/plugins/wtfp/actions/research-gap.json +1 -1
  136. package/vendors/copilot/plugins/wtfp/agents/wtfp-research-synthesizer.md +1 -1
  137. package/vendors/copilot/plugins/wtfp/commands/wtfp-plan-section.md +3 -2
  138. package/vendors/copilot/plugins/wtfp/commands/wtfp-write-section.md +1 -1
  139. package/vendors/copilot/plugins/wtfp/roles/research-synthesizer.md +1 -1
  140. package/vendors/copilot/plugins/wtfp/skills/wtfp-plan-section/references/actions.md +1 -1
  141. package/vendors/copilot/plugins/wtfp/skills/wtfp-research-literature/references/actions.md +1 -1
  142. package/vendors/copilot/plugins/wtfp/skills/wtfp-write-section/references/actions.md +1 -1
  143. package/vendors/copilot/plugins/wtfp/tools/README.md +1 -1
  144. package/vendors/copilot/plugins/wtfp/tools/package.json +1 -0
  145. package/vendors/copilot/plugins/wtfp/workflows/plan-section.md +3 -2
  146. package/vendors/copilot/plugins/wtfp/workflows/research-gap.md +2 -2
  147. package/vendors/copilot/plugins/wtfp/workflows/write-section.md +1 -1
  148. package/vendors/copilot/project/.github/agents/wtfp-research-synthesizer.agent.md +1 -1
  149. package/vendors/copilot/project/.github/skills/wtfp-plan-section/references/actions.md +1 -1
  150. package/vendors/copilot/project/.github/skills/wtfp-research-literature/references/actions.md +1 -1
  151. package/vendors/copilot/project/.github/skills/wtfp-write-section/references/actions.md +1 -1
  152. package/vendors/copilot/project/.github/wtfp/actions/research-gap.json +1 -1
  153. package/vendors/copilot/project/.github/wtfp/roles/research-synthesizer.md +1 -1
  154. package/vendors/copilot/project/.github/wtfp/skills/wtfp-plan-section/references/actions.md +1 -1
  155. package/vendors/copilot/project/.github/wtfp/skills/wtfp-research-literature/references/actions.md +1 -1
  156. package/vendors/copilot/project/.github/wtfp/skills/wtfp-write-section/references/actions.md +1 -1
  157. package/vendors/copilot/project/.github/wtfp/workflows/plan-section.md +3 -2
  158. package/vendors/copilot/project/.github/wtfp/workflows/research-gap.md +2 -2
  159. package/vendors/copilot/project/.github/wtfp/workflows/write-section.md +1 -1
  160. package/vendors/gemini/.wtfp-generated.json +24 -20
  161. package/vendors/gemini/actions/research-gap.json +1 -1
  162. package/vendors/gemini/agents/wtfp-research-synthesizer.md +1 -1
  163. package/vendors/gemini/commands/wtfp/discuss-section.toml +1 -1
  164. package/vendors/gemini/commands/wtfp/execute-outline.toml +1 -1
  165. package/vendors/gemini/commands/wtfp/insert-section.toml +1 -1
  166. package/vendors/gemini/commands/wtfp/list-assumptions.toml +1 -1
  167. package/vendors/gemini/commands/wtfp/plan-revision.toml +1 -1
  168. package/vendors/gemini/commands/wtfp/plan-section.toml +4 -3
  169. package/vendors/gemini/commands/wtfp/quick.toml +1 -1
  170. package/vendors/gemini/commands/wtfp/write-section.toml +2 -2
  171. package/vendors/gemini/gemini-extension.json +1 -1
  172. package/vendors/gemini/roles/research-synthesizer.md +1 -1
  173. package/vendors/gemini/skills/wtfp-plan-section/references/actions.md +1 -1
  174. package/vendors/gemini/skills/wtfp-research-literature/references/actions.md +1 -1
  175. package/vendors/gemini/skills/wtfp-write-section/references/actions.md +1 -1
  176. package/vendors/gemini/tools/README.md +1 -1
  177. package/vendors/gemini/tools/package.json +1 -0
  178. package/vendors/gemini/workflows/plan-section.md +3 -2
  179. package/vendors/gemini/workflows/research-gap.md +2 -2
  180. package/vendors/gemini/workflows/write-section.md +1 -1
  181. package/vendors/opencode/.wtfp-generated.json +23 -19
  182. package/vendors/opencode/actions/research-gap.json +1 -1
  183. package/vendors/opencode/agents/wtfp/research-synthesizer.md +1 -1
  184. package/vendors/opencode/commands/wtfp/discuss-section.md +1 -1
  185. package/vendors/opencode/commands/wtfp/execute-outline.md +1 -1
  186. package/vendors/opencode/commands/wtfp/insert-section.md +1 -1
  187. package/vendors/opencode/commands/wtfp/list-assumptions.md +1 -1
  188. package/vendors/opencode/commands/wtfp/plan-revision.md +1 -1
  189. package/vendors/opencode/commands/wtfp/plan-section.md +4 -3
  190. package/vendors/opencode/commands/wtfp/quick.md +1 -1
  191. package/vendors/opencode/commands/wtfp/write-section.md +2 -2
  192. package/vendors/opencode/roles/research-synthesizer.md +1 -1
  193. package/vendors/opencode/skills/wtfp-plan-section/references/actions.md +1 -1
  194. package/vendors/opencode/skills/wtfp-research-literature/references/actions.md +1 -1
  195. package/vendors/opencode/skills/wtfp-write-section/references/actions.md +1 -1
  196. package/vendors/opencode/tools/README.md +1 -1
  197. package/vendors/opencode/tools/package.json +1 -0
  198. package/vendors/opencode/workflows/plan-section.md +3 -2
  199. package/vendors/opencode/workflows/research-gap.md +2 -2
  200. package/vendors/opencode/workflows/write-section.md +1 -1
  201. package/vendors/plugin/.wtfp-generated.json +44 -40
  202. package/vendors/plugin/actions/research-gap.json +1 -1
  203. package/vendors/plugin/ai.iowarp.clio/agents/wtfp-research-synthesizer.md +1 -1
  204. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/add-todo.md +6 -12
  205. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/analyze-bib.md +9 -19
  206. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/audit-milestone.md +7 -25
  207. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/check-refs.md +9 -15
  208. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/check-todos.md +9 -13
  209. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/checkpoint.md +7 -27
  210. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/create-outline.md +9 -25
  211. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/discuss-section.md +7 -17
  212. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/execute-outline.md +10 -27
  213. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/help.md +2 -2
  214. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/insert-section.md +7 -13
  215. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/map-project.md +6 -14
  216. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/new-paper.md +7 -17
  217. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/pause-writing.md +6 -18
  218. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/plan-milestone-gaps.md +7 -15
  219. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/plan-section.md +12 -29
  220. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/polish-prose.md +10 -15
  221. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/quick.md +10 -15
  222. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/research-gap.md +15 -23
  223. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/resume-writing.md +7 -23
  224. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/review-section.md +9 -19
  225. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/settings.md +7 -9
  226. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/submit-milestone.md +7 -25
  227. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/verify-work.md +7 -15
  228. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/write-section.md +11 -29
  229. package/vendors/plugin/compatibility/action-availability.json +16 -1
  230. package/vendors/plugin/plugin.json +7 -7
  231. package/vendors/plugin/roles/research-synthesizer.md +1 -1
  232. package/vendors/plugin/skills/wtfp-plan-section/references/actions.md +1 -1
  233. package/vendors/plugin/skills/wtfp-research-literature/references/actions.md +1 -1
  234. package/vendors/plugin/skills/wtfp-write-section/references/actions.md +1 -1
  235. package/vendors/plugin/tools/README.md +1 -1
  236. package/vendors/plugin/tools/package.json +1 -0
  237. package/vendors/plugin/workflows/plan-section.md +3 -2
  238. package/vendors/plugin/workflows/research-gap.md +2 -2
  239. package/vendors/plugin/workflows/write-section.md +1 -1
  240. /package/vendors/plugin/ai.iowarp.clio/{fleets → playbooks}/wtfp-draft-review.md +0 -0
  241. /package/vendors/plugin/ai.iowarp.clio/{fleets → playbooks}/wtfp-plan-section.md +0 -0
@@ -2,7 +2,7 @@
2
2
  "schema": "wtfp.generated-adapter/v1",
3
3
  "generatorVersion": 5,
4
4
  "target": "portable-plugin",
5
- "sourceHash": "4410b402746b85cdca9896c0fb801237d578308f35d520848398ce33868badec",
5
+ "sourceHash": "b9f5585d873d30c0359174a7085216a46fba6e8299cfd95bfd4da42a587ac5e2",
6
6
  "files": [
7
7
  {
8
8
  "path": "actions/add-todo.json",
@@ -118,7 +118,7 @@
118
118
  },
119
119
  {
120
120
  "path": "actions/research-gap.json",
121
- "sha256": "80659531e18fb60dd46620c8b35aa27ce0f966c467f0d3073ae8c6519084153e"
121
+ "sha256": "0c26fa663f1d2526cbefcc9750b0a176ddf1ca538a46585a1de48c763fbb1a13"
122
122
  },
123
123
  {
124
124
  "path": "actions/resume-writing.json",
@@ -178,7 +178,7 @@
178
178
  },
179
179
  {
180
180
  "path": "ai.iowarp.clio/agents/wtfp-research-synthesizer.md",
181
- "sha256": "18cfbac40fe49413797ed8bd12779df158eacb0155620dd34c966e061f2d5182"
181
+ "sha256": "593ddb282208d889997efd80b3f52168562c8002abd2aabed30992a237caa6cb"
182
182
  },
183
183
  {
184
184
  "path": "ai.iowarp.clio/agents/wtfp-section-planner.md",
@@ -193,36 +193,36 @@
193
193
  "sha256": "244c1113f62261628265bb2c2c210e0837865a44077a1362db8e9f77b01dea4b"
194
194
  },
195
195
  {
196
- "path": "ai.iowarp.clio/fleets/wtfp-draft-review.md",
196
+ "path": "ai.iowarp.clio/playbooks/wtfp-draft-review.md",
197
197
  "sha256": "5b1d3f9bb4d39ccaa60837decfdbf58e6fd5fd9fb8267fb01d09784c33467426"
198
198
  },
199
199
  {
200
- "path": "ai.iowarp.clio/fleets/wtfp-plan-section.md",
200
+ "path": "ai.iowarp.clio/playbooks/wtfp-plan-section.md",
201
201
  "sha256": "d4dd9c14e4e07098083141e44f8ed4ce0907ae39ba715d149cf82f5192ae38b9"
202
202
  },
203
203
  {
204
204
  "path": "ai.iowarp.clio/prompts/wtfp/add-todo.md",
205
- "sha256": "688825904ac171934d50fd63fa4aa4046d324b723e773585030fe3329d9dfce8"
205
+ "sha256": "349eb5cb4f713bbb6d66432c343c251ab1ea148d9527423901111be2390f02dc"
206
206
  },
207
207
  {
208
208
  "path": "ai.iowarp.clio/prompts/wtfp/analyze-bib.md",
209
- "sha256": "583ba553597346b4680dda0713b68e1c0a93c4be1418b944393a397e800ce41c"
209
+ "sha256": "25a72c626036921d77294b469831c85e2ae0fecd803b9973ecf563d0cef47f23"
210
210
  },
211
211
  {
212
212
  "path": "ai.iowarp.clio/prompts/wtfp/audit-milestone.md",
213
- "sha256": "bb6a5f760154d4d4c18953ad54385d5ee82877da4bfd6ae8b2f6b54cc7503750"
213
+ "sha256": "4d82c1589232d20eb5733c7ae4968faa9846b0e3285ba9e3619517ef17622ffd"
214
214
  },
215
215
  {
216
216
  "path": "ai.iowarp.clio/prompts/wtfp/check-refs.md",
217
- "sha256": "3385439db58741aab645eb1ca02274b60b704e4023158a72af17a77d2eb7f2da"
217
+ "sha256": "ba98ac168789b38c9aaf1edb81a16ed7ab6a1ed1781e26a2de01f6d895d3ca84"
218
218
  },
219
219
  {
220
220
  "path": "ai.iowarp.clio/prompts/wtfp/check-todos.md",
221
- "sha256": "289d348cbf4908a87fc916e08132e16df647ab69a403b8db90b3d1954e6d9d22"
221
+ "sha256": "c331002c414fb32ca3333e4ea255a2cde10ac03defec4bb39cf42e2b720878d6"
222
222
  },
223
223
  {
224
224
  "path": "ai.iowarp.clio/prompts/wtfp/checkpoint.md",
225
- "sha256": "37a9a120c1f4f83e4f183b881209f4da368d2f761f6c0e27919bff3cdc107f74"
225
+ "sha256": "50b4ca0cd8376d359b09a484e780580473f6de8289867cfba4341431527dc4d9"
226
226
  },
227
227
  {
228
228
  "path": "ai.iowarp.clio/prompts/wtfp/contribute.md",
@@ -230,7 +230,7 @@
230
230
  },
231
231
  {
232
232
  "path": "ai.iowarp.clio/prompts/wtfp/create-outline.md",
233
- "sha256": "111c7370be43755f4cb16feb93913d5a7396cedd63714672c7fedc6d6f88bbcd"
233
+ "sha256": "2fa1bb7b28ab71808f0cd4dfd1e07f22e41af88d0af310b5089c463f9257dfe5"
234
234
  },
235
235
  {
236
236
  "path": "ai.iowarp.clio/prompts/wtfp/create-poster.md",
@@ -242,11 +242,11 @@
242
242
  },
243
243
  {
244
244
  "path": "ai.iowarp.clio/prompts/wtfp/discuss-section.md",
245
- "sha256": "792cb3e9cc66436796caad842dd2adca71c77b5433e70c25308dcb241fe11d26"
245
+ "sha256": "c7a5d6810ed5dbd372c9c23f59a77313e4fdd4104ee7bf17557c0c237e79f404"
246
246
  },
247
247
  {
248
248
  "path": "ai.iowarp.clio/prompts/wtfp/execute-outline.md",
249
- "sha256": "b0f6ed52a8565f926d629de6d62d0023978ef8d4ee5c2a501b0f82f8a3e94c8a"
249
+ "sha256": "3aecaf6747e9156964e44bd56a6f1ccf200b815eaac8e0d43b162dae41738afa"
250
250
  },
251
251
  {
252
252
  "path": "ai.iowarp.clio/prompts/wtfp/export-latex.md",
@@ -254,11 +254,11 @@
254
254
  },
255
255
  {
256
256
  "path": "ai.iowarp.clio/prompts/wtfp/help.md",
257
- "sha256": "ac77d149d4e1a6c7932d82ca2a77d4aa62e4bdbd1a9b797cae8ac984f6493c3d"
257
+ "sha256": "e454bfc4d2b7d0018ce8c539a7abccd80312b8f96b214f3db32d5b91c6eb0d11"
258
258
  },
259
259
  {
260
260
  "path": "ai.iowarp.clio/prompts/wtfp/insert-section.md",
261
- "sha256": "742f3859422dfbd8b12b9bdac81da4ecb67b579305e81c359d01cef3606729e8"
261
+ "sha256": "ef7ef5011c671608dbf798ba3cf11d5c2c4534a46a4b33aaf1074ef4fc86272f"
262
262
  },
263
263
  {
264
264
  "path": "ai.iowarp.clio/prompts/wtfp/list-assumptions.md",
@@ -266,19 +266,19 @@
266
266
  },
267
267
  {
268
268
  "path": "ai.iowarp.clio/prompts/wtfp/map-project.md",
269
- "sha256": "15fef66c4926732197f1f9127624143d5ceb7a4c4cf06ee26c6fd8e4b82b274e"
269
+ "sha256": "54aab8b851f2acb4f2609fd7b97128395d37230231facbf6266f0996f077dc93"
270
270
  },
271
271
  {
272
272
  "path": "ai.iowarp.clio/prompts/wtfp/new-paper.md",
273
- "sha256": "84aa310823146fe231ed4315ce241492b09dd34c3eafedbae662306d6936791e"
273
+ "sha256": "5eb22e4dc53d70f9590c1012907ad573d710e60de77a1ad739318e343c195669"
274
274
  },
275
275
  {
276
276
  "path": "ai.iowarp.clio/prompts/wtfp/pause-writing.md",
277
- "sha256": "3848e1d8336d73500ed6a6d729cdd4284ad6ad0495f8f33ca35fbd405acd1359"
277
+ "sha256": "d2cde8adb0d478245676086cd41724076842004738f76da607330faff1077c5f"
278
278
  },
279
279
  {
280
280
  "path": "ai.iowarp.clio/prompts/wtfp/plan-milestone-gaps.md",
281
- "sha256": "6df911ddd2702a72f6159647760bceb37b5a4acd7493cc75dfb84d62d460e4c6"
281
+ "sha256": "8ade09b99a64a09813f14e970a69b62a18e20e7d1a53f0a28939ac66a20e67d0"
282
282
  },
283
283
  {
284
284
  "path": "ai.iowarp.clio/prompts/wtfp/plan-revision.md",
@@ -286,11 +286,11 @@
286
286
  },
287
287
  {
288
288
  "path": "ai.iowarp.clio/prompts/wtfp/plan-section.md",
289
- "sha256": "64675acb9837869f406a2124af1964e40098b852fd5fc468339e7c7dba4ccb5f"
289
+ "sha256": "3e9a5265f2f022b94349666f60d02f509cd799b3ea8e683470aaf0af31abbf3f"
290
290
  },
291
291
  {
292
292
  "path": "ai.iowarp.clio/prompts/wtfp/polish-prose.md",
293
- "sha256": "7abb5c3775ebbba4c4f05ba30126b5d13f8bf0ab30ea93421b221e98eaff4c17"
293
+ "sha256": "fd8f6038531de73aae5e83ae4b569cdbfce0f49ca05f758387a6b03d09b3c774"
294
294
  },
295
295
  {
296
296
  "path": "ai.iowarp.clio/prompts/wtfp/progress.md",
@@ -298,7 +298,7 @@
298
298
  },
299
299
  {
300
300
  "path": "ai.iowarp.clio/prompts/wtfp/quick.md",
301
- "sha256": "217cf43832efd72085f06a77e7ba1ba625d0bd190e867e93e0258e3dd03ddccf"
301
+ "sha256": "fb5103617e061355a3adc07f6a9a0f22afe84f5d0fa4e4fdbaf829b7cef4a875"
302
302
  },
303
303
  {
304
304
  "path": "ai.iowarp.clio/prompts/wtfp/remove-section.md",
@@ -314,23 +314,23 @@
314
314
  },
315
315
  {
316
316
  "path": "ai.iowarp.clio/prompts/wtfp/research-gap.md",
317
- "sha256": "4a82aa543eb353d5da41a9db5b5da560f38fa00a030558551d04ba81eab60cb5"
317
+ "sha256": "ec807f47ea82f1f9791ead678eea7496f045be65bf4ec0efc466fed14b59ced3"
318
318
  },
319
319
  {
320
320
  "path": "ai.iowarp.clio/prompts/wtfp/resume-writing.md",
321
- "sha256": "836b59b3a45bddfae59fd2136b8801bc1d2a2b8369e9726d31846dd7703b45f7"
321
+ "sha256": "810580ce5f58d6cda5de809501da92b9e8bb78c3921bc34992142ada6ab8c592"
322
322
  },
323
323
  {
324
324
  "path": "ai.iowarp.clio/prompts/wtfp/review-section.md",
325
- "sha256": "1279a53ee6565d237ff3792b2da39140c199a816d939aca8acffb2d32ffb3a3c"
325
+ "sha256": "0fc8976f0c48784e50f7e94c4f4e9dc94e8b31930d245996c38a893d7951b189"
326
326
  },
327
327
  {
328
328
  "path": "ai.iowarp.clio/prompts/wtfp/settings.md",
329
- "sha256": "60f5308b10cc6de61e7d6f6b0c2a82b2effd9201abeaee1b351f2b0f6284a516"
329
+ "sha256": "ae5c6d7c0042bbd6330ae578d4ad9ec113001e8e86044b2ce03f546ea5f37b50"
330
330
  },
331
331
  {
332
332
  "path": "ai.iowarp.clio/prompts/wtfp/submit-milestone.md",
333
- "sha256": "8146dcb0c64a742977d27ab89d7998409116d420864dba627f6c50e7ae88deb4"
333
+ "sha256": "6128c27b9d24ac460e46a981d12893975826700f4b6b59a7c24e4164e1f26835"
334
334
  },
335
335
  {
336
336
  "path": "ai.iowarp.clio/prompts/wtfp/update.md",
@@ -338,11 +338,11 @@
338
338
  },
339
339
  {
340
340
  "path": "ai.iowarp.clio/prompts/wtfp/verify-work.md",
341
- "sha256": "a868da2cf99de227ab5e56f145174669f937c3df86dd5a921331b9c54ad5d1c4"
341
+ "sha256": "918f4ca32835d39ad5573eee751ea73d18eeded1f0afee54c9f7b964bed6706e"
342
342
  },
343
343
  {
344
344
  "path": "ai.iowarp.clio/prompts/wtfp/write-section.md",
345
- "sha256": "85aafb0a798559a37bf87e0fe1b26da4ef8bb365ba8bb82029c8380043b3fbb1"
345
+ "sha256": "02db3b9c4fa9d6658ce8f7dfb9759576004e14120b3d74be0ec97ac9ba14ed23"
346
346
  },
347
347
  {
348
348
  "path": "aliases.lock.json",
@@ -354,7 +354,7 @@
354
354
  },
355
355
  {
356
356
  "path": "compatibility/action-availability.json",
357
- "sha256": "b410e8921f8dd0657b71025c5aaf6b09999ec80b401cee9b47acdbc3d8844bce"
357
+ "sha256": "7ba4766f06e913ac1967899836ce1ae322b11c1477837c88803f82aa4c95a085"
358
358
  },
359
359
  {
360
360
  "path": "effects.json",
@@ -362,7 +362,7 @@
362
362
  },
363
363
  {
364
364
  "path": "plugin.json",
365
- "sha256": "26d19ac3b6c3071527cfff692e71dd991f377a84b5b0dc45384d2b4aaaff908c"
365
+ "sha256": "4ba24c372ede7e4708e54fb9baf803f4d79fe0ea2b227596fbff7601ac947a67"
366
366
  },
367
367
  {
368
368
  "path": "project/README.md",
@@ -486,7 +486,7 @@
486
486
  },
487
487
  {
488
488
  "path": "roles/research-synthesizer.md",
489
- "sha256": "011feaa1fdb967c267713f4fa4b0c45b27e66a62f71d1f24c4f44360442aef57"
489
+ "sha256": "7aa6922f5f819918374b1a87dbda5c12fa6d424be64fc13b4019c380e011306c"
490
490
  },
491
491
  {
492
492
  "path": "roles/section-planner.md",
@@ -554,7 +554,7 @@
554
554
  },
555
555
  {
556
556
  "path": "skills/wtfp-plan-section/references/actions.md",
557
- "sha256": "12f406519d516f91d42386fb19022cdd9a53d48f59b63b55bea2047ceb222792"
557
+ "sha256": "80d71be47df4f02a62f35d586ce795d3b47f03c92b25c9ea2a2aa698a4023dfa"
558
558
  },
559
559
  {
560
560
  "path": "skills/wtfp-plan-section/SKILL.md",
@@ -566,7 +566,7 @@
566
566
  },
567
567
  {
568
568
  "path": "skills/wtfp-research-literature/references/actions.md",
569
- "sha256": "83ad7126edc5f2012bc4bdbd3486a3eaf6b6453a0d575416b8ca4633c97fff24"
569
+ "sha256": "85ab6c768813bfcb49b1da3d57e329fc667aa200e72ed82afa3d7112e7384539"
570
570
  },
571
571
  {
572
572
  "path": "skills/wtfp-research-literature/SKILL.md",
@@ -602,7 +602,7 @@
602
602
  },
603
603
  {
604
604
  "path": "skills/wtfp-write-section/references/actions.md",
605
- "sha256": "367b9144ce76b4e6116d9a2566c02070e80bbb57325a43bf5aa22447e6cb83f5"
605
+ "sha256": "1fe6f8d50a1abd7a0b338772560317404942874ddd67be458ca24182ea20f7a4"
606
606
  },
607
607
  {
608
608
  "path": "skills/wtfp-write-section/SKILL.md",
@@ -660,9 +660,13 @@
660
660
  "path": "tools/citation/semantic-scholar.js",
661
661
  "sha256": "df4c1f3d69a28e06dd5285ba46c116bb2731aa940e16b9438c822846f38646f5"
662
662
  },
663
+ {
664
+ "path": "tools/package.json",
665
+ "sha256": "dbf8353f77358bc12169b7bb7301e1978d5b503e002ee927229a8993672818fc"
666
+ },
663
667
  {
664
668
  "path": "tools/README.md",
665
- "sha256": "997889703a61599a3d6267b1ddbd571ac354b55e7fe3a9dc2ebbf00b6c6d2106"
669
+ "sha256": "eb99d2ef30209b409e8c0dbfccaabdf301b6bc50f17013cd8fa381c3c1d69ae2"
666
670
  },
667
671
  {
668
672
  "path": "tools/support/cite-nexus-client.js",
@@ -758,7 +762,7 @@
758
762
  },
759
763
  {
760
764
  "path": "workflows/plan-section.md",
761
- "sha256": "02311226aa784dea4a6a5219ef59fcea6c904f92566318e3327aa4e883228446"
765
+ "sha256": "831c20c8afd147a8ba149a46f54591b6f07732983ee916a56c66701c8c701aa2"
762
766
  },
763
767
  {
764
768
  "path": "workflows/polish-prose.md",
@@ -786,7 +790,7 @@
786
790
  },
787
791
  {
788
792
  "path": "workflows/research-gap.md",
789
- "sha256": "a1736edb7e739708a92e5ef11c2d7c7a87fe8e6e4d6586e8ce9b1db3ae5bb428"
793
+ "sha256": "02ffe236ba7de12e4b3abbac308c0e1cfc409147147d509616b95baec3fef012"
790
794
  },
791
795
  {
792
796
  "path": "workflows/resume-writing.md",
@@ -814,7 +818,7 @@
814
818
  },
815
819
  {
816
820
  "path": "workflows/write-section.md",
817
- "sha256": "cfb3a0f9c61830d62cebdf8be5dacd17cef996d99cbab1df18267313ca05aacc"
821
+ "sha256": "5a2f0efcd11d7f41d941f54b80798ad481773820907fee68bea47f28b7af7bc3"
818
822
  }
819
823
  ]
820
824
  }
@@ -96,7 +96,7 @@
96
96
  },
97
97
  {
98
98
  "id": "user.gate",
99
- "scope": "the external providers, bounded query set, and research scope and depth"
99
+ "scope": "unapproved or paid external providers and bounded query set, plus author-owned research scope and depth decisions"
100
100
  }
101
101
  ]
102
102
  }
@@ -52,7 +52,7 @@ Investigate the literature needed to plan and write a specific section well. The
52
52
  ## Boundaries
53
53
 
54
54
  - This is a `mutation-report` role. It may write only the research and suggestion artifacts authorized by the invoking action.
55
- - When external literature search is approved, `citation-search` may run with `--backend=cite-nexus` and an explicit `--providers` list after the gate. Returned results stay candidates, and this role never performs a bibliography write.
55
+ - An operator-configured, trusted read-only CiteNexus MCP connection may search bounded public scholarly metadata without a second per-query gate. In an explicitly selected full-auto host session for this research action, `citation-search --backend=cite-nexus` may also search `crossref`, `datacite`, `europe_pmc`, or `arxiv` without another gate. Other providers or modes require explicit network approval naming providers and query bounds. Honor offline flags and host refusals. Returned results stay candidates, and this role never performs a bibliography write.
56
56
  - Never fabricate a citation, identifier, quotation, metadata field, source conclusion, or claim of exhaustive coverage.
57
57
  - Never overwrite an existing `project://sources/{source}` record. Additions remain provisional until identity and provenance are verified by an authorized action.
58
58
  - Do not explore alternatives that author decisions explicitly deferred or rejected.
@@ -5,18 +5,16 @@ argument-hint: "[arguments]"
5
5
 
6
6
  # Add a todo
7
7
 
8
- @${pluginRoot}/project/README.md
9
8
  @${pluginRoot}/skills/wtfp-manage-project/SKILL.md
10
- @${pluginRoot}/skills/wtfp-manage-project/references/actions.md
11
9
 
12
10
  ## Record contract
13
11
 
14
12
  Read: `project://manifest`, `project://state`, `project://checkpoints/{checkpoint}`.
15
13
  Produce: `project://checkpoints/{checkpoint}` (create), `project://state` (update).
16
14
 
17
- Resolve every logical URI through the host adapter. Portable v1 JSON records are the source of truth: schema-validate before a write, preserve stable IDs, update revision and timestamps where required, and replace records atomically. Never pass a literal logical URI to a shell command or infer record state from a legacy Markdown control file.
15
+ Use `extension_wtfp__record` for each declared JSON record write: pass its logical `uri`, complete `record`, and the revision read as `expect_revision` for revisioned updates. It validates, bumps revisions/timestamps, replaces atomically and reads back; preserve stable IDs and author decisions.
18
16
 
19
- Manuscript prose and supporting context, research, plan, review, summary, handoff, and deliverable artifacts retain their authored format (normally Markdown). Link them from the relevant v1 record; do not convert manuscript prose into project-state JSON.
17
+ Write prose and linked artifacts with native file tools; keep their authored formats. The record tool handles JSON records only, never manuscript text, deletion or archives.
20
18
 
21
19
  ## Procedure
22
20
 
@@ -30,16 +28,12 @@ Do not initialize a repository or run branch, stage, commit, merge, push, or pub
30
28
 
31
29
  Report the logical resources read, created, updated, archived, or deleted; the gates crossed; validation results; unresolved checkpoints; and the safest next action. Never claim a mutation that was not verified.
32
30
 
33
- ## Bound action contract and schemas
31
+ Discover the named tools with `gateway(op="describe", capability="extension_wtfp__record")` (and the corresponding `measure_section` or `gate` name), then use `gateway(op="call", capability="<exact name>", args={...})`. A present tool's error or refusal stops the action; never bypass it with a manual write or shell script.
32
+ If desk tools are absent, follow `${pluginRoot}/workflows/add-todo.md` and `${pluginRoot}/project/README.md` with native tools and `ask_user` gates.
33
+
34
+ ## Bound action contract
34
35
 
35
36
  @${pluginRoot}/actions/add-todo.json
36
- @${pluginRoot}/project/schemas/common.schema.json
37
- @${pluginRoot}/project/schemas/checkpoint.schema.json
38
- @${pluginRoot}/project/templates/checkpoint.json
39
- @${pluginRoot}/project/schemas/manifest.schema.json
40
- @${pluginRoot}/project/templates/manifest.json
41
- @${pluginRoot}/project/schemas/state.schema.json
42
- @${pluginRoot}/project/templates/state.json
43
37
 
44
38
  ## Invocation input
45
39
 
@@ -5,18 +5,16 @@ argument-hint: "[arguments]"
5
5
 
6
6
  # Analyze the bibliography
7
7
 
8
- @${pluginRoot}/project/README.md
9
8
  @${pluginRoot}/skills/wtfp-research-literature/SKILL.md
10
- @${pluginRoot}/skills/wtfp-research-literature/references/actions.md
11
9
 
12
10
  ## Record contract
13
11
 
14
12
  Read: `project://manifest`, `project://structure/outline`, `project://sections/{section}`, `project://sources/{source}`, `project://evidence/{evidence}`, `project://materials/{artifact}`, `project://paper/{artifact}`.
15
13
  Produce: `project://sources/{source}` (create), `project://sources/{source}` (update), `project://evidence/{evidence}` (create), `project://evidence/{evidence}` (update), `project://validations/{validation}` (create).
16
14
 
17
- Resolve every logical URI through the host adapter. Portable v1 JSON records are the source of truth: schema-validate before a write, preserve stable IDs, update revision and timestamps where required, and replace records atomically. Never pass a literal logical URI to a shell command or infer record state from a legacy Markdown control file.
15
+ Use `extension_wtfp__record` for each declared JSON record write: pass its logical `uri`, complete `record`, and the revision read as `expect_revision` for revisioned updates. It validates, bumps revisions/timestamps, replaces atomically and reads back; preserve stable IDs and author decisions.
18
16
 
19
- Manuscript prose and supporting context, research, plan, review, summary, handoff, and deliverable artifacts retain their authored format (normally Markdown). Link them from the relevant v1 record; do not convert manuscript prose into project-state JSON.
17
+ Write prose and linked artifacts with native file tools; keep their authored formats. The record tool handles JSON records only, never manuscript text, deletion or archives.
20
18
 
21
19
  ## Procedure
22
20
 
@@ -41,22 +39,12 @@ Do not initialize a repository or run branch, stage, commit, merge, push, or pub
41
39
 
42
40
  Report the logical resources read, created, updated, archived, or deleted; the gates crossed; validation results; unresolved checkpoints; and the safest next action. Never claim a mutation that was not verified.
43
41
 
44
- ## Bound action contract and schemas
42
+ Discover the named tools with `gateway(op="describe", capability="extension_wtfp__record")` (and the corresponding `measure_section` or `gate` name), then use `gateway(op="call", capability="<exact name>", args={...})`. A present tool's error or refusal stops the action; never bypass it with a manual write or shell script.
43
+ If desk tools are absent, follow `${pluginRoot}/workflows/analyze-bib.md` and `${pluginRoot}/project/README.md` with native tools and `ask_user` gates.
44
+
45
+ ## Bound action contract
45
46
 
46
47
  @${pluginRoot}/actions/analyze-bib.json
47
- @${pluginRoot}/project/schemas/common.schema.json
48
- @${pluginRoot}/project/schemas/evidence.schema.json
49
- @${pluginRoot}/project/templates/evidence.json
50
- @${pluginRoot}/project/schemas/manifest.schema.json
51
- @${pluginRoot}/project/templates/manifest.json
52
- @${pluginRoot}/project/schemas/outline.schema.json
53
- @${pluginRoot}/project/templates/outline.json
54
- @${pluginRoot}/project/schemas/section.schema.json
55
- @${pluginRoot}/project/templates/section.json
56
- @${pluginRoot}/project/schemas/source.schema.json
57
- @${pluginRoot}/project/templates/source.json
58
- @${pluginRoot}/project/schemas/validation.schema.json
59
- @${pluginRoot}/project/templates/validation.json
60
48
 
61
49
  ## Invocation input
62
50
 
@@ -68,10 +56,12 @@ $ARGUMENTS
68
56
 
69
57
  ## Clio user-gate binding
70
58
 
71
- Call `ask_user` whenever this workflow reaches a declared `user.gate`; only the structured value returned by that tool satisfies the gate. Invocation arguments, assistant prose, silence, or a report artifact do not count as a selection. Apply no gated mutation before `ask_user` returns. After any permitted mutation, perform the workflow-required readback before reporting success.
59
+ For a pending checkpoint in the declared gate's exact scope, call `extension_wtfp__gate` with its ID. Create a missing pending checkpoint through `extension_wtfp__record` only when this action declares checkpoint creation; otherwise use `ask_user` for the unpersisted author decision and do not invent an undeclared output. Only the structured author answer satisfies the gate; cancelled, retained or expired checkpoints authorize nothing. Never write `resolution.resolved_by: author` yourself or infer approval from invocation text, prose or silence. Read back a persisted resolution before applying its gated mutation.
72
60
 
73
61
  ## Clio role-result binding
74
62
 
63
+ Dispatch the declared specialist roles using these exact Clio agent IDs: `wtfp-citation-expert`. Do not substitute generic coder or verifier agents. If a named agent is unavailable, report that blocker and stop instead of silently changing roles.
64
+
75
65
  Read the single wtfp.role-result entry in native validations/checks and parse its evidence string as portable role-result JSON. Validate its schema, role and action against the dispatched task. Missing, duplicate or malformed outcomes fail closed. On needs_input ask the author through ask_user and redispatch with the response; on blocked or failed stop and report the issue. Only completed permits downstream work, and it never substitutes for an author gate or artifact readback.
76
66
 
77
67
  <!-- Generated by WTF-P adapter compiler v5 from protocol/actions/analyze-bib; do not edit. -->
@@ -5,18 +5,16 @@ argument-hint: "[arguments]"
5
5
 
6
6
  # Audit a milestone
7
7
 
8
- @${pluginRoot}/project/README.md
9
8
  @${pluginRoot}/skills/wtfp-review-manuscript/SKILL.md
10
- @${pluginRoot}/skills/wtfp-review-manuscript/references/actions.md
11
9
 
12
10
  ## Record contract
13
11
 
14
12
  Read: `project://manifest`, `project://config`, `project://state`, `project://decisions`, `project://structure/outline`, `project://sections/{section}`, `project://sources/{source}`, `project://evidence/{evidence}`, `project://validations/{validation}`, `project://paper/{artifact}`.
15
13
  Produce: `project://validations/{validation}` (create).
16
14
 
17
- Resolve every logical URI through the host adapter. Portable v1 JSON records are the source of truth: schema-validate before a write, preserve stable IDs, update revision and timestamps where required, and replace records atomically. Never pass a literal logical URI to a shell command or infer record state from a legacy Markdown control file.
15
+ Use `extension_wtfp__record` for each declared JSON record write: pass its logical `uri`, complete `record`, and the revision read as `expect_revision` for revisioned updates. It validates, bumps revisions/timestamps, replaces atomically and reads back; preserve stable IDs and author decisions.
18
16
 
19
- Manuscript prose and supporting context, research, plan, review, summary, handoff, and deliverable artifacts retain their authored format (normally Markdown). Link them from the relevant v1 record; do not convert manuscript prose into project-state JSON.
17
+ Write prose and linked artifacts with native file tools; keep their authored formats. The record tool handles JSON records only, never manuscript text, deletion or archives.
20
18
 
21
19
  ## Procedure
22
20
 
@@ -40,28 +38,12 @@ Do not initialize a repository or run branch, stage, commit, merge, push, or pub
40
38
 
41
39
  Report the logical resources read, created, updated, archived, or deleted; the gates crossed; validation results; unresolved checkpoints; and the safest next action. Never claim a mutation that was not verified.
42
40
 
43
- ## Bound action contract and schemas
41
+ Discover the named tools with `gateway(op="describe", capability="extension_wtfp__record")` (and the corresponding `measure_section` or `gate` name), then use `gateway(op="call", capability="<exact name>", args={...})`. A present tool's error or refusal stops the action; never bypass it with a manual write or shell script.
42
+ If desk tools are absent, follow `${pluginRoot}/workflows/audit-milestone.md` and `${pluginRoot}/project/README.md` with native tools and `ask_user` gates.
43
+
44
+ ## Bound action contract
44
45
 
45
46
  @${pluginRoot}/actions/audit-milestone.json
46
- @${pluginRoot}/project/schemas/common.schema.json
47
- @${pluginRoot}/project/schemas/config.schema.json
48
- @${pluginRoot}/project/templates/config.json
49
- @${pluginRoot}/project/schemas/decisions.schema.json
50
- @${pluginRoot}/project/templates/decisions.json
51
- @${pluginRoot}/project/schemas/evidence.schema.json
52
- @${pluginRoot}/project/templates/evidence.json
53
- @${pluginRoot}/project/schemas/manifest.schema.json
54
- @${pluginRoot}/project/templates/manifest.json
55
- @${pluginRoot}/project/schemas/outline.schema.json
56
- @${pluginRoot}/project/templates/outline.json
57
- @${pluginRoot}/project/schemas/section.schema.json
58
- @${pluginRoot}/project/templates/section.json
59
- @${pluginRoot}/project/schemas/source.schema.json
60
- @${pluginRoot}/project/templates/source.json
61
- @${pluginRoot}/project/schemas/state.schema.json
62
- @${pluginRoot}/project/templates/state.json
63
- @${pluginRoot}/project/schemas/validation.schema.json
64
- @${pluginRoot}/project/templates/validation.json
65
47
 
66
48
  ## Invocation input
67
49
 
@@ -73,6 +55,6 @@ $ARGUMENTS
73
55
 
74
56
  ## Clio user-gate binding
75
57
 
76
- Call `ask_user` whenever this workflow reaches a declared `user.gate`; only the structured value returned by that tool satisfies the gate. Invocation arguments, assistant prose, silence, or a report artifact do not count as a selection. Apply no gated mutation before `ask_user` returns. After any permitted mutation, perform the workflow-required readback before reporting success.
58
+ For a pending checkpoint in the declared gate's exact scope, call `extension_wtfp__gate` with its ID. Create a missing pending checkpoint through `extension_wtfp__record` only when this action declares checkpoint creation; otherwise use `ask_user` for the unpersisted author decision and do not invent an undeclared output. Only the structured author answer satisfies the gate; cancelled, retained or expired checkpoints authorize nothing. Never write `resolution.resolved_by: author` yourself or infer approval from invocation text, prose or silence. Read back a persisted resolution before applying its gated mutation.
77
59
 
78
60
  <!-- Generated by WTF-P adapter compiler v5 from protocol/actions/audit-milestone; do not edit. -->
@@ -5,18 +5,16 @@ argument-hint: "[arguments]"
5
5
 
6
6
  # Check references
7
7
 
8
- @${pluginRoot}/project/README.md
9
8
  @${pluginRoot}/skills/wtfp-research-literature/SKILL.md
10
- @${pluginRoot}/skills/wtfp-research-literature/references/actions.md
11
9
 
12
10
  ## Record contract
13
11
 
14
12
  Read: `project://config`, `project://sources/{source}`, `project://evidence/{evidence}`, `project://materials/{artifact}`, `project://paper/{artifact}`.
15
13
  Produce: `project://deliverables/bibliography/{artifact}` (create), `project://validations/{validation}` (create).
16
14
 
17
- Resolve every logical URI through the host adapter. Portable v1 JSON records are the source of truth: schema-validate before a write, preserve stable IDs, update revision and timestamps where required, and replace records atomically. Never pass a literal logical URI to a shell command or infer record state from a legacy Markdown control file.
15
+ Use `extension_wtfp__record` for each declared JSON record write: pass its logical `uri`, complete `record`, and the revision read as `expect_revision` for revisioned updates. It validates, bumps revisions/timestamps, replaces atomically and reads back; preserve stable IDs and author decisions.
18
16
 
19
- Manuscript prose and supporting context, research, plan, review, summary, handoff, and deliverable artifacts retain their authored format (normally Markdown). Link them from the relevant v1 record; do not convert manuscript prose into project-state JSON.
17
+ Write prose and linked artifacts with native file tools; keep their authored formats. The record tool handles JSON records only, never manuscript text, deletion or archives.
20
18
 
21
19
  ## Procedure
22
20
 
@@ -40,18 +38,12 @@ Do not initialize a repository or run branch, stage, commit, merge, push, or pub
40
38
 
41
39
  Report the logical resources read, created, updated, archived, or deleted; the gates crossed; validation results; unresolved checkpoints; and the safest next action. Never claim a mutation that was not verified.
42
40
 
43
- ## Bound action contract and schemas
41
+ Discover the named tools with `gateway(op="describe", capability="extension_wtfp__record")` (and the corresponding `measure_section` or `gate` name), then use `gateway(op="call", capability="<exact name>", args={...})`. A present tool's error or refusal stops the action; never bypass it with a manual write or shell script.
42
+ If desk tools are absent, follow `${pluginRoot}/workflows/check-refs.md` and `${pluginRoot}/project/README.md` with native tools and `ask_user` gates.
43
+
44
+ ## Bound action contract
44
45
 
45
46
  @${pluginRoot}/actions/check-refs.json
46
- @${pluginRoot}/project/schemas/common.schema.json
47
- @${pluginRoot}/project/schemas/config.schema.json
48
- @${pluginRoot}/project/templates/config.json
49
- @${pluginRoot}/project/schemas/evidence.schema.json
50
- @${pluginRoot}/project/templates/evidence.json
51
- @${pluginRoot}/project/schemas/source.schema.json
52
- @${pluginRoot}/project/templates/source.json
53
- @${pluginRoot}/project/schemas/validation.schema.json
54
- @${pluginRoot}/project/templates/validation.json
55
47
 
56
48
  ## Invocation input
57
49
 
@@ -63,10 +55,12 @@ $ARGUMENTS
63
55
 
64
56
  ## Clio user-gate binding
65
57
 
66
- Call `ask_user` whenever this workflow reaches a declared `user.gate`; only the structured value returned by that tool satisfies the gate. Invocation arguments, assistant prose, silence, or a report artifact do not count as a selection. Apply no gated mutation before `ask_user` returns. After any permitted mutation, perform the workflow-required readback before reporting success.
58
+ For a pending checkpoint in the declared gate's exact scope, call `extension_wtfp__gate` with its ID. Create a missing pending checkpoint through `extension_wtfp__record` only when this action declares checkpoint creation; otherwise use `ask_user` for the unpersisted author decision and do not invent an undeclared output. Only the structured author answer satisfies the gate; cancelled, retained or expired checkpoints authorize nothing. Never write `resolution.resolved_by: author` yourself or infer approval from invocation text, prose or silence. Read back a persisted resolution before applying its gated mutation.
67
59
 
68
60
  ## Clio role-result binding
69
61
 
62
+ Dispatch the declared specialist roles using these exact Clio agent IDs: `wtfp-citation-formatter`. Do not substitute generic coder or verifier agents. If a named agent is unavailable, report that blocker and stop instead of silently changing roles.
63
+
70
64
  Read the single wtfp.role-result entry in native validations/checks and parse its evidence string as portable role-result JSON. Validate its schema, role and action against the dispatched task. Missing, duplicate or malformed outcomes fail closed. On needs_input ask the author through ask_user and redispatch with the response; on blocked or failed stop and report the issue. Only completed permits downstream work, and it never substitutes for an author gate or artifact readback.
71
65
 
72
66
  <!-- Generated by WTF-P adapter compiler v5 from protocol/actions/check-refs; do not edit. -->
@@ -5,24 +5,22 @@ argument-hint: "[arguments]"
5
5
 
6
6
  # Review todos
7
7
 
8
- @${pluginRoot}/project/README.md
9
8
  @${pluginRoot}/skills/wtfp-manage-project/SKILL.md
10
- @${pluginRoot}/skills/wtfp-manage-project/references/actions.md
11
9
 
12
10
  ## Record contract
13
11
 
14
12
  Read: `project://state`, `project://checkpoints/{checkpoint}`.
15
13
  Produce: `project://checkpoints/{checkpoint}` (update), `project://state` (update).
16
14
 
17
- Resolve every logical URI through the host adapter. Portable v1 JSON records are the source of truth: schema-validate before a write, preserve stable IDs, update revision and timestamps where required, and replace records atomically. Never pass a literal logical URI to a shell command or infer record state from a legacy Markdown control file.
15
+ Use `extension_wtfp__record` for each declared JSON record write: pass its logical `uri`, complete `record`, and the revision read as `expect_revision` for revisioned updates. It validates, bumps revisions/timestamps, replaces atomically and reads back; preserve stable IDs and author decisions.
18
16
 
19
- Manuscript prose and supporting context, research, plan, review, summary, handoff, and deliverable artifacts retain their authored format (normally Markdown). Link them from the relevant v1 record; do not convert manuscript prose into project-state JSON.
17
+ Write prose and linked artifacts with native file tools; keep their authored formats. The record tool handles JSON records only, never manuscript text, deletion or archives.
20
18
 
21
19
  ## Procedure
22
20
 
23
21
  1. List pending human-action checkpoints in deterministic order with their requests and scope URIs.
24
- 2. Ask the user to resolve, waive, retain, or expire each selected checkpoint.
25
- 3. Apply only the approved status transitions and reconcile state.active_checkpoint_uris.
22
+ 2. Call `extension_wtfp__gate` for each selected pending checkpoint; the parked interview records the author's answer.
23
+ 3. Read back the resulting checkpoint and state; retained or cancelled gates remain pending.
26
24
 
27
25
  ## Safety and completion
28
26
 
@@ -30,14 +28,12 @@ Do not initialize a repository or run branch, stage, commit, merge, push, or pub
30
28
 
31
29
  Report the logical resources read, created, updated, archived, or deleted; the gates crossed; validation results; unresolved checkpoints; and the safest next action. Never claim a mutation that was not verified.
32
30
 
33
- ## Bound action contract and schemas
31
+ Discover the named tools with `gateway(op="describe", capability="extension_wtfp__record")` (and the corresponding `measure_section` or `gate` name), then use `gateway(op="call", capability="<exact name>", args={...})`. A present tool's error or refusal stops the action; never bypass it with a manual write or shell script.
32
+ If desk tools are absent, follow `${pluginRoot}/workflows/check-todos.md` and `${pluginRoot}/project/README.md` with native tools and `ask_user` gates.
33
+
34
+ ## Bound action contract
34
35
 
35
36
  @${pluginRoot}/actions/check-todos.json
36
- @${pluginRoot}/project/schemas/common.schema.json
37
- @${pluginRoot}/project/schemas/checkpoint.schema.json
38
- @${pluginRoot}/project/templates/checkpoint.json
39
- @${pluginRoot}/project/schemas/state.schema.json
40
- @${pluginRoot}/project/templates/state.json
41
37
 
42
38
  ## Invocation input
43
39
 
@@ -49,6 +45,6 @@ $ARGUMENTS
49
45
 
50
46
  ## Clio user-gate binding
51
47
 
52
- Call `ask_user` whenever this workflow reaches a declared `user.gate`; only the structured value returned by that tool satisfies the gate. Invocation arguments, assistant prose, silence, or a report artifact do not count as a selection. Apply no gated mutation before `ask_user` returns. After any permitted mutation, perform the workflow-required readback before reporting success.
48
+ For a pending checkpoint in the declared gate's exact scope, call `extension_wtfp__gate` with its ID. Create a missing pending checkpoint through `extension_wtfp__record` only when this action declares checkpoint creation; otherwise use `ask_user` for the unpersisted author decision and do not invent an undeclared output. Only the structured author answer satisfies the gate; cancelled, retained or expired checkpoints authorize nothing. Never write `resolution.resolved_by: author` yourself or infer approval from invocation text, prose or silence. Read back a persisted resolution before applying its gated mutation.
53
49
 
54
50
  <!-- Generated by WTF-P adapter compiler v5 from protocol/actions/check-todos; do not edit. -->