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
@@ -0,0 +1,102 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.wtf-p.dev/project/manifest/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": [
7
+ "schema",
8
+ "protocol_version",
9
+ "id",
10
+ "title",
11
+ "document_type",
12
+ "core_argument",
13
+ "created_at",
14
+ "updated_at",
15
+ "artifacts"
16
+ ],
17
+ "properties": {
18
+ "schema": { "const": "wtfp.project.manifest/v1" },
19
+ "protocol_version": { "const": 1 },
20
+ "id": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
21
+ "title": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" },
22
+ "document_type": {
23
+ "enum": [
24
+ "research-article",
25
+ "conference-paper",
26
+ "review",
27
+ "grant-proposal",
28
+ "thesis",
29
+ "dissertation",
30
+ "book-chapter",
31
+ "other"
32
+ ]
33
+ },
34
+ "core_argument": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" },
35
+ "target": {
36
+ "type": "object",
37
+ "additionalProperties": false,
38
+ "properties": {
39
+ "venue": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" },
40
+ "audience": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" },
41
+ "word_limit": { "type": "integer", "minimum": 1 },
42
+ "deadline": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/date" }
43
+ }
44
+ },
45
+ "requirements": {
46
+ "type": "object",
47
+ "additionalProperties": false,
48
+ "required": ["must_have", "should_have", "out_of_scope"],
49
+ "properties": {
50
+ "must_have": {
51
+ "type": "array",
52
+ "items": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" },
53
+ "uniqueItems": true
54
+ },
55
+ "should_have": {
56
+ "type": "array",
57
+ "items": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" },
58
+ "uniqueItems": true
59
+ },
60
+ "out_of_scope": {
61
+ "type": "array",
62
+ "items": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" },
63
+ "uniqueItems": true
64
+ }
65
+ }
66
+ },
67
+ "created_at": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/timestamp" },
68
+ "updated_at": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/timestamp" },
69
+ "artifacts": {
70
+ "type": "object",
71
+ "additionalProperties": false,
72
+ "required": ["manifest", "config", "state", "decisions", "outline"],
73
+ "properties": {
74
+ "manifest": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/logicalUri" },
75
+ "config": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/logicalUri" },
76
+ "state": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/logicalUri" },
77
+ "decisions": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/logicalUri" },
78
+ "outline": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/logicalUri" },
79
+ "materials": {
80
+ "type": "array",
81
+ "items": { "type": "string", "pattern": "^project://materials/[A-Za-z0-9._~-]+(?:/[A-Za-z0-9._~-]+)*$" },
82
+ "uniqueItems": true
83
+ },
84
+ "manuscripts": {
85
+ "type": "array",
86
+ "items": { "type": "string", "pattern": "^project://paper/[A-Za-z0-9._~-]+(?:/[A-Za-z0-9._~-]+)*$" },
87
+ "uniqueItems": true
88
+ },
89
+ "deliverables": {
90
+ "type": "array",
91
+ "items": { "type": "string", "pattern": "^project://deliverables/[A-Za-z0-9._~-]+(?:/[A-Za-z0-9._~-]+)*$" },
92
+ "uniqueItems": true
93
+ },
94
+ "archives": {
95
+ "type": "array",
96
+ "items": { "type": "string", "pattern": "^project://archives/[A-Za-z0-9._~-]+(?:/[A-Za-z0-9._~-]+)*$" },
97
+ "uniqueItems": true
98
+ }
99
+ }
100
+ }
101
+ }
102
+ }
@@ -0,0 +1,67 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.wtf-p.dev/project/outline/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": ["schema", "project_id", "revision", "thesis", "target_words", "sections", "updated_at"],
7
+ "properties": {
8
+ "schema": { "const": "wtfp.project.outline/v1" },
9
+ "project_id": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
10
+ "revision": { "type": "integer", "minimum": 0 },
11
+ "thesis": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" },
12
+ "target_words": { "type": "integer", "minimum": 1 },
13
+ "sections": {
14
+ "type": "array",
15
+ "minItems": 1,
16
+ "items": {
17
+ "type": "object",
18
+ "additionalProperties": false,
19
+ "required": [
20
+ "id",
21
+ "title",
22
+ "goal",
23
+ "argument_role",
24
+ "word_target",
25
+ "wave",
26
+ "depends_on",
27
+ "claim_ids",
28
+ "research"
29
+ ],
30
+ "properties": {
31
+ "id": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
32
+ "title": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" },
33
+ "goal": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" },
34
+ "argument_role": {
35
+ "enum": ["setup", "background", "method", "evidence", "synthesis", "implications", "conclusion", "other"]
36
+ },
37
+ "word_target": { "type": "integer", "minimum": 1 },
38
+ "wave": { "type": "integer", "minimum": 1 },
39
+ "depends_on": {
40
+ "type": "array",
41
+ "items": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
42
+ "uniqueItems": true
43
+ },
44
+ "claim_ids": {
45
+ "type": "array",
46
+ "items": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
47
+ "uniqueItems": true
48
+ },
49
+ "research": {
50
+ "type": "object",
51
+ "additionalProperties": false,
52
+ "required": ["required", "topics"],
53
+ "properties": {
54
+ "required": { "type": "boolean" },
55
+ "topics": {
56
+ "type": "array",
57
+ "items": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" },
58
+ "uniqueItems": true
59
+ }
60
+ }
61
+ }
62
+ }
63
+ }
64
+ },
65
+ "updated_at": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/timestamp" }
66
+ }
67
+ }
@@ -0,0 +1,95 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.wtf-p.dev/project/section/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": [
7
+ "schema",
8
+ "id",
9
+ "project_id",
10
+ "outline_uri",
11
+ "title",
12
+ "goal",
13
+ "status",
14
+ "word_target",
15
+ "word_count",
16
+ "wave",
17
+ "depends_on",
18
+ "claims",
19
+ "artifacts",
20
+ "checkpoint_uris",
21
+ "validation_uris",
22
+ "updated_at"
23
+ ],
24
+ "properties": {
25
+ "schema": { "const": "wtfp.project.section/v1" },
26
+ "id": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
27
+ "project_id": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
28
+ "outline_uri": { "const": "project://structure/outline" },
29
+ "title": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" },
30
+ "goal": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" },
31
+ "status": {
32
+ "enum": ["not-started", "researching", "planned", "writing", "reviewing", "complete", "blocked"]
33
+ },
34
+ "word_target": { "type": "integer", "minimum": 1 },
35
+ "word_count": { "type": "integer", "minimum": 0 },
36
+ "wave": { "type": "integer", "minimum": 1 },
37
+ "depends_on": {
38
+ "type": "array",
39
+ "items": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
40
+ "uniqueItems": true
41
+ },
42
+ "claims": {
43
+ "type": "array",
44
+ "items": {
45
+ "type": "object",
46
+ "additionalProperties": false,
47
+ "required": ["id", "statement", "status", "evidence_required", "evidence_uris"],
48
+ "properties": {
49
+ "id": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
50
+ "statement": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" },
51
+ "status": { "enum": ["planned", "drafted", "verified", "rejected"] },
52
+ "evidence_required": { "type": "boolean" },
53
+ "evidence_uris": {
54
+ "type": "array",
55
+ "items": { "type": "string", "pattern": "^project://evidence/[A-Za-z0-9._~-]+$" },
56
+ "uniqueItems": true
57
+ }
58
+ }
59
+ }
60
+ },
61
+ "artifacts": {
62
+ "type": "object",
63
+ "additionalProperties": false,
64
+ "required": ["plans", "reviews"],
65
+ "properties": {
66
+ "context": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/logicalUri" },
67
+ "research": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/logicalUri" },
68
+ "plans": {
69
+ "type": "array",
70
+ "items": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/logicalUri" },
71
+ "uniqueItems": true
72
+ },
73
+ "reviews": {
74
+ "type": "array",
75
+ "items": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/logicalUri" },
76
+ "uniqueItems": true
77
+ },
78
+ "manuscript": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/logicalUri" },
79
+ "summary": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/logicalUri" },
80
+ "handoff": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/logicalUri" }
81
+ }
82
+ },
83
+ "checkpoint_uris": {
84
+ "type": "array",
85
+ "items": { "type": "string", "pattern": "^project://checkpoints/[A-Za-z0-9._~-]+$" },
86
+ "uniqueItems": true
87
+ },
88
+ "validation_uris": {
89
+ "type": "array",
90
+ "items": { "type": "string", "pattern": "^project://validations/[A-Za-z0-9._~-]+$" },
91
+ "uniqueItems": true
92
+ },
93
+ "updated_at": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/timestamp" }
94
+ }
95
+ }
@@ -0,0 +1,73 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.wtf-p.dev/project/source/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": [
7
+ "schema",
8
+ "id",
9
+ "project_id",
10
+ "kind",
11
+ "title",
12
+ "creators",
13
+ "year",
14
+ "identifiers",
15
+ "status",
16
+ "provenance"
17
+ ],
18
+ "properties": {
19
+ "schema": { "const": "wtfp.project.source/v1" },
20
+ "id": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
21
+ "project_id": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
22
+ "kind": {
23
+ "enum": [
24
+ "journal-article",
25
+ "conference-paper",
26
+ "book",
27
+ "book-chapter",
28
+ "preprint",
29
+ "thesis",
30
+ "dataset",
31
+ "software",
32
+ "standard",
33
+ "web-resource",
34
+ "author-material",
35
+ "other"
36
+ ]
37
+ },
38
+ "title": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" },
39
+ "creators": {
40
+ "type": "array",
41
+ "minItems": 1,
42
+ "items": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" }
43
+ },
44
+ "year": { "type": ["integer", "null"], "minimum": 1000, "maximum": 2200 },
45
+ "identifiers": {
46
+ "type": "object",
47
+ "additionalProperties": false,
48
+ "minProperties": 1,
49
+ "properties": {
50
+ "doi": { "type": "string", "pattern": "^10\\.[0-9]{4,9}/\\S+$" },
51
+ "arxiv": { "type": "string", "pattern": "^(?:[a-z-]+/[0-9]{7}|[0-9]{4}\\.[0-9]{4,5})(?:v[0-9]+)?$" },
52
+ "isbn": { "type": "string", "minLength": 10 },
53
+ "url": { "type": "string", "format": "uri" },
54
+ "local_id": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" }
55
+ }
56
+ },
57
+ "citation_key": { "type": "string", "pattern": "^[A-Za-z0-9:_-]+$" },
58
+ "status": { "enum": ["verified", "provisional", "unavailable", "retracted"] },
59
+ "provenance": {
60
+ "type": "object",
61
+ "additionalProperties": false,
62
+ "required": ["discovered_via", "inspection_depth", "verified_at"],
63
+ "properties": {
64
+ "discovered_via": {
65
+ "enum": ["scholarly-index", "bibliography-import", "author-provided", "repository", "manual"]
66
+ },
67
+ "inspection_depth": { "enum": ["metadata", "abstract", "full-text", "primary-data"] },
68
+ "verified_at": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/timestamp" },
69
+ "notes": { "type": "string" }
70
+ }
71
+ }
72
+ }
73
+ }
@@ -0,0 +1,58 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.wtf-p.dev/project/state/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": [
7
+ "schema",
8
+ "project_id",
9
+ "revision",
10
+ "phase",
11
+ "status",
12
+ "current_section_uri",
13
+ "progress",
14
+ "active_checkpoint_uris",
15
+ "updated_at"
16
+ ],
17
+ "properties": {
18
+ "schema": { "const": "wtfp.project.state/v1" },
19
+ "project_id": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
20
+ "revision": { "type": "integer", "minimum": 0 },
21
+ "phase": {
22
+ "enum": ["initialized", "mapped", "outlining", "planning", "writing", "reviewing", "ready", "delivered"]
23
+ },
24
+ "status": { "enum": ["active", "paused", "blocked", "complete"] },
25
+ "current_section_uri": {
26
+ "type": ["string", "null"],
27
+ "pattern": "^project://sections/[A-Za-z0-9._~-]+$"
28
+ },
29
+ "progress": {
30
+ "type": "object",
31
+ "additionalProperties": false,
32
+ "required": ["sections_total", "sections_complete", "word_target", "word_count"],
33
+ "properties": {
34
+ "sections_total": { "type": "integer", "minimum": 0 },
35
+ "sections_complete": { "type": "integer", "minimum": 0 },
36
+ "word_target": { "type": "integer", "minimum": 0 },
37
+ "word_count": { "type": "integer", "minimum": 0 }
38
+ }
39
+ },
40
+ "active_checkpoint_uris": {
41
+ "type": "array",
42
+ "items": { "type": "string", "pattern": "^project://checkpoints/[A-Za-z0-9._~-]+$" },
43
+ "uniqueItems": true
44
+ },
45
+ "last_transition": {
46
+ "type": "object",
47
+ "additionalProperties": false,
48
+ "required": ["from", "to", "reason", "at"],
49
+ "properties": {
50
+ "from": { "type": "string", "minLength": 1 },
51
+ "to": { "type": "string", "minLength": 1 },
52
+ "reason": { "type": "string", "minLength": 1 },
53
+ "at": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/timestamp" }
54
+ }
55
+ },
56
+ "updated_at": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/timestamp" }
57
+ }
58
+ }
@@ -0,0 +1,74 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.wtf-p.dev/project/validation/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": [
7
+ "schema",
8
+ "id",
9
+ "project_id",
10
+ "subject_uri",
11
+ "validator_role",
12
+ "action_id",
13
+ "status",
14
+ "checks",
15
+ "issues",
16
+ "next_actions",
17
+ "effects_applied",
18
+ "executed_at"
19
+ ],
20
+ "properties": {
21
+ "schema": { "const": "wtfp.project.validation/v1" },
22
+ "id": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
23
+ "project_id": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
24
+ "subject_uri": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/logicalUri" },
25
+ "validator_role": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
26
+ "action_id": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
27
+ "status": { "enum": ["passed", "issues-found", "needs-input", "failed"] },
28
+ "checks": {
29
+ "type": "array",
30
+ "minItems": 1,
31
+ "items": {
32
+ "type": "object",
33
+ "additionalProperties": false,
34
+ "required": ["id", "status", "summary", "evidence"],
35
+ "properties": {
36
+ "id": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
37
+ "status": { "enum": ["passed", "warning", "failed", "not-applicable"] },
38
+ "summary": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" },
39
+ "evidence": {
40
+ "type": "array",
41
+ "items": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" }
42
+ }
43
+ }
44
+ }
45
+ },
46
+ "issues": {
47
+ "type": "array",
48
+ "items": {
49
+ "type": "object",
50
+ "additionalProperties": false,
51
+ "required": ["severity", "summary"],
52
+ "properties": {
53
+ "severity": { "enum": ["info", "warning", "error", "blocker"] },
54
+ "summary": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" },
55
+ "evidence": { "type": "string" }
56
+ }
57
+ }
58
+ },
59
+ "next_actions": {
60
+ "type": "array",
61
+ "items": {
62
+ "type": "object",
63
+ "additionalProperties": false,
64
+ "required": ["action", "reason"],
65
+ "properties": {
66
+ "action": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/identifier" },
67
+ "reason": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/nonEmptyString" }
68
+ }
69
+ }
70
+ },
71
+ "effects_applied": { "const": [] },
72
+ "executed_at": { "$ref": "https://schemas.wtf-p.dev/project/common/v1#/$defs/timestamp" }
73
+ }
74
+ }