wtf-p 0.1.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 (92) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +338 -0
  3. package/bin/install.js +358 -0
  4. package/bin/uninstall.js +485 -0
  5. package/commands/wtfp/analyze-bib.md +326 -0
  6. package/commands/wtfp/check-refs.md +205 -0
  7. package/commands/wtfp/create-outline.md +275 -0
  8. package/commands/wtfp/discuss-section.md +71 -0
  9. package/commands/wtfp/export-latex.md +216 -0
  10. package/commands/wtfp/help.md +342 -0
  11. package/commands/wtfp/insert-section.md +130 -0
  12. package/commands/wtfp/list-assumptions.md +109 -0
  13. package/commands/wtfp/map-project.md +197 -0
  14. package/commands/wtfp/new-paper.md +443 -0
  15. package/commands/wtfp/pause-writing.md +145 -0
  16. package/commands/wtfp/plan-revision.md +180 -0
  17. package/commands/wtfp/plan-section.md +247 -0
  18. package/commands/wtfp/polish-prose.md +177 -0
  19. package/commands/wtfp/progress.md +325 -0
  20. package/commands/wtfp/remove-section.md +147 -0
  21. package/commands/wtfp/research-gap.md +235 -0
  22. package/commands/wtfp/resume-writing.md +142 -0
  23. package/commands/wtfp/review-section.md +409 -0
  24. package/commands/wtfp/submit-milestone.md +211 -0
  25. package/commands/wtfp/write-section.md +273 -0
  26. package/package.json +40 -0
  27. package/write-the-f-paper/references/checkpoints.md +213 -0
  28. package/write-the-f-paper/references/continuation-format.md +223 -0
  29. package/write-the-f-paper/references/git-integration.md +241 -0
  30. package/write-the-f-paper/references/imrad-structure.md +212 -0
  31. package/write-the-f-paper/references/length-estimation.md +148 -0
  32. package/write-the-f-paper/references/plan-format.md +361 -0
  33. package/write-the-f-paper/references/principles.md +158 -0
  34. package/write-the-f-paper/references/questioning.md +132 -0
  35. package/write-the-f-paper/references/research-pitfalls.md +208 -0
  36. package/write-the-f-paper/templates/config.json +30 -0
  37. package/write-the-f-paper/templates/context.md +179 -0
  38. package/write-the-f-paper/templates/continue-here.md +142 -0
  39. package/write-the-f-paper/templates/data-inventory.md +142 -0
  40. package/write-the-f-paper/templates/discovery.md +146 -0
  41. package/write-the-f-paper/templates/issues.md +59 -0
  42. package/write-the-f-paper/templates/manuscript.md +253 -0
  43. package/write-the-f-paper/templates/narrative-arc.md +227 -0
  44. package/write-the-f-paper/templates/outline.md +274 -0
  45. package/write-the-f-paper/templates/phase-prompt.md +348 -0
  46. package/write-the-f-paper/templates/prior-drafts.md +204 -0
  47. package/write-the-f-paper/templates/project-context/argument-structure.md +267 -0
  48. package/write-the-f-paper/templates/project-context/bibliography.md +152 -0
  49. package/write-the-f-paper/templates/project-context/gaps.md +122 -0
  50. package/write-the-f-paper/templates/project-context/imrad.md +140 -0
  51. package/write-the-f-paper/templates/project-context/peer-review.md +152 -0
  52. package/write-the-f-paper/templates/project-context/style-guide.md +198 -0
  53. package/write-the-f-paper/templates/project-context/tools.md +170 -0
  54. package/write-the-f-paper/templates/project.md +185 -0
  55. package/write-the-f-paper/templates/research.md +384 -0
  56. package/write-the-f-paper/templates/review-comments.md +253 -0
  57. package/write-the-f-paper/templates/revision-issues.md +169 -0
  58. package/write-the-f-paper/templates/roadmap.md +187 -0
  59. package/write-the-f-paper/templates/section-archive.md +178 -0
  60. package/write-the-f-paper/templates/section-context.md +114 -0
  61. package/write-the-f-paper/templates/section.md +128 -0
  62. package/write-the-f-paper/templates/state.md +244 -0
  63. package/write-the-f-paper/templates/summary.md +277 -0
  64. package/write-the-f-paper/venues/acm-cs.yaml +102 -0
  65. package/write-the-f-paper/venues/arxiv-ml.yaml +103 -0
  66. package/write-the-f-paper/venues/ieee-cs.yaml +100 -0
  67. package/write-the-f-paper/venues/nature.yaml +81 -0
  68. package/write-the-f-paper/venues/thesis-chapter.yaml +101 -0
  69. package/write-the-f-paper/workflows/create-outline.md +462 -0
  70. package/write-the-f-paper/workflows/create-outline.wcn.md +194 -0
  71. package/write-the-f-paper/workflows/discuss-section.md +249 -0
  72. package/write-the-f-paper/workflows/discuss-section.wcn.md +63 -0
  73. package/write-the-f-paper/workflows/execute-section.md +704 -0
  74. package/write-the-f-paper/workflows/execute-section.wcn.md +219 -0
  75. package/write-the-f-paper/workflows/list-assumptions.md +183 -0
  76. package/write-the-f-paper/workflows/list-assumptions.wcn.md +42 -0
  77. package/write-the-f-paper/workflows/lit-review-phase.md +281 -0
  78. package/write-the-f-paper/workflows/lit-review-phase.wcn.md +92 -0
  79. package/write-the-f-paper/workflows/map-project.md +359 -0
  80. package/write-the-f-paper/workflows/map-project.wcn.md +73 -0
  81. package/write-the-f-paper/workflows/plan-section.md +409 -0
  82. package/write-the-f-paper/workflows/plan-section.wcn.md +236 -0
  83. package/write-the-f-paper/workflows/research-gap.md +469 -0
  84. package/write-the-f-paper/workflows/research-gap.wcn.md +119 -0
  85. package/write-the-f-paper/workflows/resume-paper.md +274 -0
  86. package/write-the-f-paper/workflows/resume-paper.wcn.md +93 -0
  87. package/write-the-f-paper/workflows/review-section.md +329 -0
  88. package/write-the-f-paper/workflows/review-section.wcn.md +91 -0
  89. package/write-the-f-paper/workflows/submit-draft.md +368 -0
  90. package/write-the-f-paper/workflows/submit-draft.wcn.md +69 -0
  91. package/write-the-f-paper/workflows/transition.md +375 -0
  92. package/write-the-f-paper/workflows/transition.wcn.md +113 -0
@@ -0,0 +1,274 @@
1
+ <trigger>
2
+ Use this workflow when:
3
+ - Starting a new session on an existing paper
4
+ - User says "continue", "what's next", "where were we", "resume"
5
+ - Any writing operation when .planning/ already exists
6
+ - User returns after time away from writing
7
+ </trigger>
8
+
9
+ <purpose>
10
+ Instantly restore full project context and present clear status.
11
+ Enables seamless session continuity for writing workflows.
12
+
13
+ "Where were we?" should have an immediate, complete answer.
14
+ </purpose>
15
+
16
+ <process>
17
+
18
+ <step name="detect_existing_project">
19
+ Check if this is an existing writing project:
20
+
21
+ ```bash
22
+ ls .planning/STATE.md 2>/dev/null && echo "Project exists"
23
+ ls .planning/ROADMAP.md 2>/dev/null && echo "Roadmap exists"
24
+ ls .planning/PROJECT.md 2>/dev/null && echo "Project file exists"
25
+ ```
26
+
27
+ **If STATE.md exists:** Proceed to load_state
28
+ **If only ROADMAP.md/PROJECT.md exist:** Offer to reconstruct STATE.md
29
+ **If .planning/ doesn't exist:** This is a new project - route to /wtfp:new-paper
30
+ </step>
31
+
32
+ <step name="load_state">
33
+
34
+ Read and parse STATE.md, then PROJECT.md:
35
+
36
+ ```bash
37
+ cat .planning/STATE.md
38
+ cat .planning/PROJECT.md
39
+ ```
40
+
41
+ **From STATE.md extract:**
42
+
43
+ - **Project Reference**: Core argument and current focus
44
+ - **Current Position**: Section X of Y, Plan A of B, Status
45
+ - **Word Count**: Current vs target
46
+ - **Section Progress**: Which sections are done
47
+ - **Argument Strength**: How solid is the thesis
48
+ - **Open Questions**: Unresolved items
49
+ - **Deferred**: Nice-to-haves logged for later
50
+ - **Session Continuity**: Where we left off, any resume files
51
+
52
+ **From PROJECT.md extract:**
53
+
54
+ - **What This Is**: Document type, venue, deadline
55
+ - **Core Argument**: The thesis
56
+ - **Requirements**: What must be in the document
57
+ - **Key Decisions**: Choices made about framing, scope
58
+
59
+ </step>
60
+
61
+ <step name="check_incomplete_work">
62
+ Look for incomplete work that needs attention:
63
+
64
+ ```bash
65
+ # Check for continue-here files (mid-plan resumption)
66
+ ls .planning/sections/*/.continue-here*.md 2>/dev/null
67
+
68
+ # Check for plans without summaries (incomplete writing)
69
+ for plan in .planning/sections/*/*-PLAN.md; do
70
+ summary="${plan/PLAN/SUMMARY}"
71
+ [ ! -f "$summary" ] && echo "Incomplete: $plan"
72
+ done 2>/dev/null
73
+ ```
74
+
75
+ **If .continue-here file exists:**
76
+
77
+ - This is a mid-plan resumption point
78
+ - Read the file for specific resumption context
79
+ - Flag: "Found mid-section checkpoint"
80
+
81
+ **If PLAN without SUMMARY exists:**
82
+
83
+ - Writing was started but not completed
84
+ - Flag: "Found incomplete writing plan"
85
+ </step>
86
+
87
+ <step name="present_status">
88
+ Present complete project status to user:
89
+
90
+ ```
91
+ ╔══════════════════════════════════════════════════════════════╗
92
+ ║ WRITING PROJECT STATUS ║
93
+ ╠══════════════════════════════════════════════════════════════╣
94
+ ║ Document: [title from PROJECT.md] ║
95
+ ║ Venue: [target venue] ║
96
+ ║ ║
97
+ ║ Section: [X] of [Y] - [Section name] ║
98
+ ║ Plan: [A] of [B] - [Status] ║
99
+ ║ Progress: [██████░░░░] XX% ║
100
+ ║ ║
101
+ ║ Words: [current] / [target] ║
102
+ ║ Last activity: [date] - [what happened] ║
103
+ ╚══════════════════════════════════════════════════════════════╝
104
+
105
+ [If incomplete work found:]
106
+ ⚠️ Incomplete work detected:
107
+ - [.continue-here file or incomplete plan]
108
+
109
+ [If open questions exist:]
110
+ ❓ Open questions:
111
+ - [Question 1]
112
+ - [Question 2]
113
+
114
+ [If argument strength is concerning:]
115
+ 📊 Argument status: [developing/weak]
116
+ - [Concern about thesis support]
117
+ ```
118
+
119
+ </step>
120
+
121
+ <step name="determine_next_action">
122
+ Based on project state, determine the most logical next action:
123
+
124
+ **If .continue-here file exists:**
125
+ → Primary: Resume from checkpoint
126
+ → Option: Start fresh on current plan
127
+
128
+ **If incomplete plan (PLAN without SUMMARY):**
129
+ → Primary: Complete the incomplete plan
130
+ → Option: Abandon and move on
131
+
132
+ **If section in progress, all plans complete:**
133
+ → Primary: Transition to next section
134
+ → Option: Review completed work
135
+
136
+ **If section ready to plan:**
137
+ Check if CONTEXT.md exists for this section:
138
+
139
+ - If CONTEXT.md missing:
140
+ → Primary: Discuss section vision
141
+ → Secondary: Plan directly (skip context gathering)
142
+ - If CONTEXT.md exists:
143
+ → Primary: Plan the section
144
+ → Option: Review roadmap
145
+
146
+ **If section ready to write:**
147
+ → Primary: Execute next plan
148
+ → Option: Review the plan first
149
+ </step>
150
+
151
+ <step name="offer_options">
152
+ Present contextual options based on project state:
153
+
154
+ ```
155
+ What would you like to do?
156
+
157
+ [Primary action based on state - e.g.:]
158
+ 1. Resume from checkpoint
159
+ OR
160
+ 1. Write next plan (/wtfp:write-section .planning/sections/XX-name/02-02-PLAN.md)
161
+ OR
162
+ 1. Discuss Section 3 context (/wtfp:discuss-section 3)
163
+ OR
164
+ 1. Plan Section 3 (/wtfp:plan-section 3)
165
+
166
+ [Secondary options:]
167
+ 2. Review current section status
168
+ 3. Check word count progress
169
+ 4. Review argument strength
170
+ 5. Something else
171
+ ```
172
+
173
+ Wait for user selection.
174
+ </step>
175
+
176
+ <step name="route_to_workflow">
177
+ Based on user selection, route to appropriate workflow:
178
+
179
+ - **Write plan** → Show command for user to run after clearing:
180
+ ```
181
+ ---
182
+
183
+ ## Next Up
184
+
185
+ **{section}-{plan}: [Plan Name]** — [objective from PLAN.md]
186
+
187
+ `/wtfp:write-section [path]`
188
+
189
+ <sub>`/clear` first → fresh context window</sub>
190
+
191
+ ---
192
+ ```
193
+ - **Plan section** → Show command for user to run after clearing:
194
+ ```
195
+ ---
196
+
197
+ ## Next Up
198
+
199
+ **Section [N]: [Name]** — [Goal from ROADMAP.md]
200
+
201
+ `/wtfp:plan-section [section-number]`
202
+
203
+ <sub>`/clear` first → fresh context window</sub>
204
+
205
+ ---
206
+
207
+ **Also available:**
208
+ - `/wtfp:discuss-section [N]` — gather context first
209
+ - `/wtfp:research-gap [topic]` — investigate literature
210
+
211
+ ---
212
+ ```
213
+ - **Review section** → Read section content, present summary
214
+ - **Check word count** → Calculate and display progress
215
+ - **Review argument** → Read argument-map.md, assess thesis support
216
+ - **Something else** → Ask what they need
217
+ </step>
218
+
219
+ <step name="update_session">
220
+ Before proceeding to routed workflow, update session continuity:
221
+
222
+ Update STATE.md:
223
+
224
+ ```markdown
225
+ ## Session Continuity
226
+
227
+ Last session: [now]
228
+ Stopped at: Session resumed, proceeding to [action]
229
+ Resume file: [updated if applicable]
230
+ ```
231
+
232
+ This ensures if session ends unexpectedly, next resume knows the state.
233
+ </step>
234
+
235
+ </process>
236
+
237
+ <reconstruction>
238
+ If STATE.md is missing but other artifacts exist:
239
+
240
+ "STATE.md missing. Reconstructing from artifacts..."
241
+
242
+ 1. Read PROJECT.md → Extract thesis and document info
243
+ 2. Read ROADMAP.md → Determine sections, find current position
244
+ 3. Scan *-SUMMARY.md files → Extract decisions, word counts
245
+ 4. Check paper/ directory → Count actual words written
246
+ 5. Check for .continue-here files → Session continuity
247
+
248
+ Reconstruct and write STATE.md, then proceed normally.
249
+ </reconstruction>
250
+
251
+ <quick_resume>
252
+ For users who want minimal friction:
253
+
254
+ If user says just "continue" or "go":
255
+
256
+ - Load state silently
257
+ - Determine primary action
258
+ - Execute immediately without presenting options
259
+
260
+ "Continuing from [state]... [action]"
261
+
262
+ This enables "just keep writing" workflow.
263
+ </quick_resume>
264
+
265
+ <success_criteria>
266
+ Resume is complete when:
267
+
268
+ - [ ] STATE.md loaded (or reconstructed)
269
+ - [ ] Incomplete work detected and flagged
270
+ - [ ] Clear status presented to user
271
+ - [ ] Contextual next actions offered
272
+ - [ ] User knows exactly where project stands
273
+ - [ ] Session continuity updated
274
+ </success_criteria>
@@ -0,0 +1,93 @@
1
+ <trigger>
2
+ Use this workflow when:
3
+ - Starting a new session on an existing paper
4
+ - User says "continue", "what's next", "where were we", "resume"
5
+ - Any writing operation when .planning/ already exists
6
+ - User returns after time away from writing
7
+ </trigger>
8
+
9
+ <purpose>
10
+ Instantly restore full project context and present clear status.
11
+ Enables seamless session continuity for writing workflows.
12
+
13
+ "Where were we?" should have an immediate, complete answer.
14
+ </purpose>
15
+
16
+ <process>
17
+
18
+ [step:detect_existing_project]
19
+ RUN: ls .planning/STATE.md 2>/dev/null && echo "Project exists"
20
+ IF STATE.md_exists → Proceed to load_state
21
+ IF only_ROADMAP.md/PROJECT.md_exist → Offer to reconstruct STATE.md
22
+ IF .planning/_doesnt_exist → This is a new project - route to /wtfp:new-paper
23
+ [/step]
24
+
25
+ [step:load_state]
26
+ RUN: cat .planning/STATE.md
27
+ [/step]
28
+
29
+ [step:check_incomplete_work]
30
+ IF .continue-here_file_exists → - This is a mid-plan resumption point
31
+ IF PLAN_without_SUMMARY_exists → - Writing was started but not completed
32
+ [/step]
33
+
34
+ [step:present_status]
35
+ [/step]
36
+
37
+ [step:determine_next_action]
38
+ IF .continue-here_file_exists → → Primary: Resume from checkpoint
39
+ IF incomplete_plan_(PLAN_without_SUMMARY) → → Primary: Complete the incomplete plan
40
+ IF section_in_progress,_all_plans_complete → → Primary: Transition to next section
41
+ IF section_ready_to_plan → Check if CONTEXT.md exists for this section:
42
+ IF section_ready_to_write → → Primary: Execute next plan
43
+ [/step]
44
+
45
+ [step:offer_options]
46
+ [/step]
47
+
48
+ [step:route_to_workflow]
49
+ [/step]
50
+
51
+ [step:update_session]
52
+ [/step]
53
+
54
+ </process>
55
+
56
+ <reconstruction>
57
+ If STATE.md is missing but other artifacts exist:
58
+
59
+ "STATE.md missing. Reconstructing from artifacts..."
60
+
61
+ 1. Read PROJECT.md → Extract thesis and document info
62
+ 2. Read ROADMAP.md → Determine sections, find current position
63
+ 3. Scan *-SUMMARY.md files → Extract decisions, word counts
64
+ 4. Check paper/ directory → Count actual words written
65
+ 5. Check for .continue-here files → Session continuity
66
+
67
+ Reconstruct and write STATE.md, then proceed normally.
68
+ </reconstruction>
69
+
70
+ <quick_resume>
71
+ For users who want minimal friction:
72
+
73
+ If user says just "continue" or "go":
74
+
75
+ - Load state silently
76
+ - Determine primary action
77
+ - Execute immediately without presenting options
78
+
79
+ "Continuing from [state]... [action]"
80
+
81
+ This enables "just keep writing" workflow.
82
+ </quick_resume>
83
+
84
+ <success_criteria>
85
+ Resume is complete when:
86
+
87
+ - [ ] STATE.md loaded (or reconstructed)
88
+ - [ ] Incomplete work detected and flagged
89
+ - [ ] Clear status presented to user
90
+ - [ ] Contextual next actions offered
91
+ - [ ] User knows exactly where project stands
92
+ - [ ] Session continuity updated
93
+ </success_criteria>
@@ -0,0 +1,329 @@
1
+ <purpose>
2
+ Run three-layer verification on written sections. Extract deliverables from SUMMARY.md,
3
+ generate verification checklist, guide user through each check, log issues.
4
+
5
+ The USER performs judgment-based verification — Claude runs mechanical checks,
6
+ identifies potential issues, and guides the verification process.
7
+ </purpose>
8
+
9
+ <three_layers>
10
+ Academic writing verification has three distinct layers:
11
+
12
+ **1. Citation Check (Mechanical)** - Claude can run this
13
+ - All claims have citations where needed
14
+ - Citations formatted correctly for style
15
+ - All cited works appear in bibliography
16
+ - No broken references or [CITE:] placeholders
17
+ - Page numbers where required by style
18
+
19
+ **2. Argument Coherence (Logical)** - Claude identifies, user verifies
20
+ - Claims follow from evidence
21
+ - No logical contradictions
22
+ - Thesis supported throughout
23
+ - Counterarguments addressed
24
+ - Flow between paragraphs
25
+
26
+ **3. Rubric Check (Requirements)** - Both verify
27
+ - Required sections present
28
+ - Word/page limits met
29
+ - Formatting requirements met
30
+ - All required elements included
31
+ - Submission checklist complete
32
+ </three_layers>
33
+
34
+ <process>
35
+
36
+ <step name="identify">
37
+ **Determine what to verify:**
38
+
39
+ If $ARGUMENTS provided:
40
+ - Parse as section number (e.g., "4") or plan number (e.g., "04-02")
41
+ - Find corresponding SUMMARY.md file(s)
42
+
43
+ If no arguments:
44
+ - Find most recently modified SUMMARY.md
45
+
46
+ ```bash
47
+ find .planning/sections -name "*SUMMARY.md" -type f -exec ls -lt {} + | head -5
48
+ ```
49
+
50
+ Read the SUMMARY.md to understand what was written.
51
+ </step>
52
+
53
+ <step name="extract">
54
+ **Extract verifiable elements from SUMMARY.md:**
55
+
56
+ Parse for:
57
+ 1. **Claims made** - Statements that need citations
58
+ 2. **Citations used** - References added
59
+ 3. **Word count** - Against target
60
+ 4. **Section goal** - Was it accomplished?
61
+
62
+ Focus on VERIFIABLE outcomes:
63
+
64
+ Examples:
65
+ - "Introduction establishes research gap" → Check: gap clearly stated
66
+ - "Three prior approaches cited" → Check: verify three relevant citations
67
+ - "Methods section ~500 words" → Check: actual word count
68
+ </step>
69
+
70
+ <step name="layer_1_citation_check">
71
+ **Run Citation Check (Mechanical):**
72
+
73
+ Claude performs these checks directly:
74
+
75
+ ```
76
+ ## Layer 1: Citation Check
77
+
78
+ Scanning [section/file] for citation issues...
79
+
80
+ ### All Claims Have Citations
81
+ - [ ] [Claim 1] - citation: [present/missing]
82
+ - [ ] [Claim 2] - citation: [present/missing]
83
+ [List all factual claims and their citation status]
84
+
85
+ ### Citation Format
86
+ Style: [detected/specified style - APA, IEEE, etc.]
87
+ - [ ] Author-year format consistent
88
+ - [ ] Et al. used correctly
89
+ - [ ] Punctuation correct
90
+
91
+ ### Bibliography Match
92
+ - [ ] All in-text citations appear in references
93
+ - [ ] No orphan references (in bibliography but not cited)
94
+ - [ ] All [CITE:] placeholders resolved
95
+
96
+ ### Issues Found
97
+ [List any mechanical citation issues]
98
+ ```
99
+
100
+ **If issues found:**
101
+ Present for resolution before continuing.
102
+ </step>
103
+
104
+ <step name="layer_2_coherence_check">
105
+ **Prepare Argument Coherence Check (Logical):**
106
+
107
+ Claude identifies potential issues, user verifies:
108
+
109
+ ```
110
+ ## Layer 2: Argument Coherence
111
+
112
+ ### Thesis Support
113
+ Central claim: [from argument-map.md]
114
+
115
+ This section should support it by: [expected contribution]
116
+
117
+ **Check:** Does the section actually advance the thesis?
118
+
119
+ ### Logical Flow
120
+ Reading the section for argument structure...
121
+
122
+ Paragraph flow:
123
+ 1. [Para 1 purpose] → [Para 2 purpose] → [Para 3 purpose]
124
+
125
+ **Potential gaps identified:**
126
+ - [Gap 1]: Between [X] and [Y], transition unclear
127
+ - [Gap 2]: Claim [Z] not fully supported
128
+
129
+ ### Contradiction Check
130
+ Cross-referencing with prior sections...
131
+
132
+ **Potential contradictions:**
133
+ - [None found / List any inconsistencies]
134
+
135
+ ### Counterargument Coverage
136
+ For claims that might face objection:
137
+ - [Claim]: [Counterargument addressed? Y/N]
138
+ ```
139
+
140
+ Use AskUserQuestion for each potential issue:
141
+ - header: "[Issue type]"
142
+ - question: "[Describe the potential issue] - Is this actually a problem?"
143
+ - options:
144
+ - "Not an issue" — The logic is sound
145
+ - "Minor issue" — Note but don't block
146
+ - "Major issue" — Needs fixing
147
+ - "Let me look" — I need to review the text
148
+ </step>
149
+
150
+ <step name="layer_3_rubric_check">
151
+ **Run Rubric Check (Requirements):**
152
+
153
+ ```
154
+ ## Layer 3: Rubric Check
155
+
156
+ ### Required Elements
157
+ [Based on document type and venue requirements]
158
+
159
+ - [ ] [Required element 1]: [present/missing]
160
+ - [ ] [Required element 2]: [present/missing]
161
+ [Check all required elements for this section type]
162
+
163
+ ### Word Count
164
+ Target: [from ROADMAP.md]
165
+ Actual: [count from written content]
166
+ Status: [within range / over / under by X%]
167
+
168
+ ### Formatting
169
+ - [ ] Heading levels correct
170
+ - [ ] Figure/table formatting (if applicable)
171
+ - [ ] Reference style consistent
172
+
173
+ ### Section-Specific Requirements
174
+ [Based on section type - e.g., for Methods:]
175
+ - [ ] Participants/setting described
176
+ - [ ] Procedure clear
177
+ - [ ] Measures defined
178
+ - [ ] Analysis approach stated
179
+ ```
180
+ </step>
181
+
182
+ <step name="collect_issues">
183
+ **Collect and categorize all issues:**
184
+
185
+ For each issue identified across three layers:
186
+
187
+ ```
188
+ ### Issue Summary
189
+
190
+ **Layer 1 (Citation) Issues:**
191
+ - [Issue]: [Severity] - [Brief description]
192
+
193
+ **Layer 2 (Coherence) Issues:**
194
+ - [Issue]: [Severity] - [Brief description]
195
+
196
+ **Layer 3 (Rubric) Issues:**
197
+ - [Issue]: [Severity] - [Brief description]
198
+ ```
199
+
200
+ Severity levels:
201
+ - **Critical** — Must fix before submission (factual error, missing required element)
202
+ - **Major** — Should fix (logical gap, weak support)
203
+ - **Minor** — Consider fixing (polish, enhancement)
204
+ - **Note** — Awareness item (not blocking)
205
+ </step>
206
+
207
+ <step name="log_issues">
208
+ **Log issues to section file if found:**
209
+
210
+ If any Critical or Major issues:
211
+
212
+ Create `.planning/sections/XX-name/{section}-ISSUES.md`:
213
+
214
+ ```markdown
215
+ # Section [X] Verification Issues
216
+
217
+ ## Summary
218
+ - Critical: [N]
219
+ - Major: [N]
220
+ - Minor: [N]
221
+
222
+ ## Critical Issues
223
+
224
+ ### CRIT-001: [Brief description]
225
+ **Layer:** [Citation/Coherence/Rubric]
226
+ **Location:** [paragraph/claim/element]
227
+ **Issue:** [Full description]
228
+ **Fix needed:** [What needs to change]
229
+
230
+ ## Major Issues
231
+
232
+ ### MAJ-001: [Brief description]
233
+ [Same format]
234
+
235
+ ## Minor Issues
236
+ [List briefly]
237
+
238
+ ## Verification Date
239
+ [Date of this review]
240
+ ```
241
+ </step>
242
+
243
+ <step name="summarize">
244
+ **Present verification summary:**
245
+
246
+ ```
247
+ # Verification Results: [Section Name]
248
+
249
+ ## Layer Scores
250
+ - Citation Check: [PASS/ISSUES - N issues]
251
+ - Coherence Check: [PASS/ISSUES - N issues]
252
+ - Rubric Check: [PASS/ISSUES - N issues]
253
+
254
+ ## Overall Status
255
+
256
+ [Based on issues found:]
257
+ - ALL PASS: "Section verified. Ready to proceed."
258
+ - MINOR ONLY: "Section solid with minor polish opportunities."
259
+ - MAJOR ISSUES: "Section needs revisions before proceeding."
260
+ - CRITICAL: "Critical issues found - must address before continuing."
261
+
262
+ ## Issues by Priority
263
+
264
+ [If issues exist:]
265
+ **Must Fix:**
266
+ - [Critical issue 1]
267
+ - [Major issue 1]
268
+
269
+ **Should Fix:**
270
+ - [Major issue 2]
271
+ - [Minor issue 1]
272
+
273
+ **Consider:**
274
+ - [Minor issues]
275
+
276
+ ## Next Steps
277
+ [Based on verdict:]
278
+ - If clean: Proceed to next section
279
+ - If issues: /wtfp:plan-revision to address
280
+ ```
281
+ </step>
282
+
283
+ <step name="offer_next">
284
+ **Offer next actions based on results:**
285
+
286
+ Use AskUserQuestion:
287
+ - header: "Next"
288
+ - question: "What would you like to do?"
289
+ - options (based on results):
290
+
291
+ If all passed:
292
+ - "Continue to next section" — Proceed with confidence
293
+ - "Verify more" — Run additional checks
294
+ - "Done" — Finish verification session
295
+
296
+ If issues found:
297
+ - "Plan revision" — Create plan to fix issues (/wtfp:plan-revision)
298
+ - "Fix now" — Address issues immediately
299
+ - "Log and continue" — Issues logged, proceed anyway
300
+ - "Done" — Finish verification session
301
+ </step>
302
+
303
+ </process>
304
+
305
+ <verification_by_section_type>
306
+ **Different sections emphasize different checks:**
307
+
308
+ | Section | Citation Heavy | Coherence Heavy | Rubric Heavy |
309
+ |---------|---------------|-----------------|--------------|
310
+ | Abstract | Low | Medium | High (word limit) |
311
+ | Introduction | High (gap) | High (argument) | Medium |
312
+ | Related Work | Very High | High (synthesis) | Medium |
313
+ | Methods | Low | Medium | High (completeness) |
314
+ | Results | Low (own data) | Medium | High (all findings) |
315
+ | Discussion | High (context) | Very High | Medium |
316
+
317
+ Adjust verification emphasis accordingly.
318
+ </verification_by_section_type>
319
+
320
+ <success_criteria>
321
+ - [ ] Section/plan identified from SUMMARY.md
322
+ - [ ] Layer 1 (Citation) check completed
323
+ - [ ] Layer 2 (Coherence) issues identified for user verification
324
+ - [ ] Layer 3 (Rubric) check completed
325
+ - [ ] All issues categorized by severity
326
+ - [ ] Issues logged to section ISSUES.md if Critical/Major
327
+ - [ ] Summary presented with clear verdict
328
+ - [ ] User knows next steps based on results
329
+ </success_criteria>