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.
- package/README.md +16 -12
- package/bin/commands/install-logic.js +1 -1
- package/bin/lib/adapter-compiler.js +175 -56
- package/bin/lib/clio-registration.js +127 -36
- package/bin/lib/manifest.js +11 -3
- package/bin/uninstall.js +3 -2
- package/package.json +1 -1
- package/protocol/actions/research-gap.json +1 -1
- package/protocol/roles/research-synthesizer.md +1 -1
- package/protocol/skills/wtfp-plan-section/references/actions.md +1 -1
- package/protocol/skills/wtfp-research-literature/references/actions.md +1 -1
- package/protocol/skills/wtfp-write-section/references/actions.md +1 -1
- package/protocol/workflows/plan-section.md +3 -2
- package/protocol/workflows/research-gap.md +2 -2
- package/protocol/workflows/write-section.md +1 -1
- package/vendors/antigravity/.wtfp-generated.json +18 -14
- package/vendors/antigravity/actions/research-gap.json +1 -1
- package/vendors/antigravity/agents/wtfp-research-synthesizer.md +1 -1
- package/vendors/antigravity/commands/wtfp-plan-section.md +3 -2
- package/vendors/antigravity/commands/wtfp-write-section.md +1 -1
- package/vendors/antigravity/plugin.json +1 -1
- package/vendors/antigravity/roles/research-synthesizer.md +1 -1
- package/vendors/antigravity/skills/wtfp-plan-section/references/actions.md +1 -1
- package/vendors/antigravity/skills/wtfp-research-literature/references/actions.md +1 -1
- package/vendors/antigravity/skills/wtfp-write-section/references/actions.md +1 -1
- package/vendors/antigravity/tools/README.md +1 -1
- package/vendors/antigravity/tools/package.json +1 -0
- package/vendors/antigravity/workflows/plan-section.md +3 -2
- package/vendors/antigravity/workflows/research-gap.md +2 -2
- package/vendors/antigravity/workflows/write-section.md +1 -1
- package/vendors/claude/.claude-plugin/marketplace.json +2 -2
- package/vendors/claude/.claude-plugin/plugin.json +1 -1
- package/vendors/claude/.wtfp-generated.json +33 -29
- package/vendors/claude/actions/research-gap.json +1 -1
- package/vendors/claude/agents/wtfp-research-synthesizer.md +1 -1
- package/vendors/claude/ai.iowarp.clio/agents/wtfp-research-synthesizer.md +1 -1
- package/vendors/claude/ai.iowarp.clio/prompts/wtfp/analyze-bib.md +2 -0
- package/vendors/claude/ai.iowarp.clio/prompts/wtfp/check-refs.md +2 -0
- package/vendors/claude/ai.iowarp.clio/prompts/wtfp/create-outline.md +2 -0
- package/vendors/claude/ai.iowarp.clio/prompts/wtfp/execute-outline.md +2 -0
- package/vendors/claude/ai.iowarp.clio/prompts/wtfp/help.md +1 -1
- package/vendors/claude/ai.iowarp.clio/prompts/wtfp/plan-section.md +5 -2
- package/vendors/claude/ai.iowarp.clio/prompts/wtfp/polish-prose.md +2 -0
- package/vendors/claude/ai.iowarp.clio/prompts/wtfp/quick.md +2 -0
- package/vendors/claude/ai.iowarp.clio/prompts/wtfp/research-gap.md +8 -2
- package/vendors/claude/ai.iowarp.clio/prompts/wtfp/review-section.md +2 -0
- package/vendors/claude/ai.iowarp.clio/prompts/wtfp/write-section.md +3 -1
- package/vendors/claude/commands/plan-section.md +3 -2
- package/vendors/claude/commands/research-gap.md +2 -2
- package/vendors/claude/commands/write-section.md +1 -1
- package/vendors/claude/plugin.json +1 -1
- package/vendors/claude/roles/research-synthesizer.md +1 -1
- package/vendors/claude/skills/wtfp-plan-section/references/actions.md +1 -1
- package/vendors/claude/skills/wtfp-research-literature/references/actions.md +1 -1
- package/vendors/claude/skills/wtfp-write-section/references/actions.md +1 -1
- package/vendors/claude/tools/README.md +1 -1
- package/vendors/claude/tools/package.json +1 -0
- package/vendors/claude/workflows/plan-section.md +3 -2
- package/vendors/claude/workflows/research-gap.md +2 -2
- package/vendors/claude/workflows/write-section.md +1 -1
- package/vendors/clio-extension/.wtfp-generated.json +228 -0
- package/vendors/clio-extension/actions/add-todo.json +52 -0
- package/vendors/clio-extension/actions/analyze-bib.json +97 -0
- package/vendors/clio-extension/actions/audit-milestone.json +63 -0
- package/vendors/clio-extension/actions/check-refs.json +80 -0
- package/vendors/clio-extension/actions/check-todos.json +52 -0
- package/vendors/clio-extension/actions/checkpoint.json +76 -0
- package/vendors/clio-extension/actions/contribute.json +57 -0
- package/vendors/clio-extension/actions/create-outline.json +84 -0
- package/vendors/clio-extension/actions/create-poster.json +54 -0
- package/vendors/clio-extension/actions/create-slides.json +54 -0
- package/vendors/clio-extension/actions/discuss-section.json +76 -0
- package/vendors/clio-extension/actions/execute-outline.json +116 -0
- package/vendors/clio-extension/actions/export-latex.json +65 -0
- package/vendors/clio-extension/actions/help.json +30 -0
- package/vendors/clio-extension/actions/insert-section.json +61 -0
- package/vendors/clio-extension/actions/list-assumptions.json +35 -0
- package/vendors/clio-extension/actions/map-project.json +71 -0
- package/vendors/clio-extension/actions/new-paper.json +70 -0
- package/vendors/clio-extension/actions/pause-writing.json +71 -0
- package/vendors/clio-extension/actions/plan-milestone-gaps.json +57 -0
- package/vendors/clio-extension/actions/plan-revision.json +58 -0
- package/vendors/clio-extension/actions/plan-section.json +100 -0
- package/vendors/clio-extension/actions/polish-prose.json +69 -0
- package/vendors/clio-extension/actions/progress.json +51 -0
- package/vendors/clio-extension/actions/quick.json +70 -0
- package/vendors/clio-extension/actions/remove-section.json +63 -0
- package/vendors/clio-extension/actions/report-bug.json +47 -0
- package/vendors/clio-extension/actions/request-feature.json +47 -0
- package/vendors/clio-extension/actions/research-gap.json +102 -0
- package/vendors/clio-extension/actions/resume-writing.json +65 -0
- package/vendors/clio-extension/actions/review-section.json +83 -0
- package/vendors/clio-extension/actions/settings.json +47 -0
- package/vendors/clio-extension/actions/submit-milestone.json +77 -0
- package/vendors/clio-extension/actions/update.json +42 -0
- package/vendors/clio-extension/actions/verify-work.json +63 -0
- package/vendors/clio-extension/actions/write-section.json +115 -0
- package/vendors/clio-extension/clio-coder-extension.yaml +53 -0
- package/vendors/clio-extension/compatibility/action-availability.json +295 -0
- package/vendors/clio-extension/project/schemas/checkpoint.schema.json +102 -0
- package/vendors/clio-extension/project/schemas/common.schema.json +33 -0
- package/vendors/clio-extension/project/schemas/config.schema.json +69 -0
- package/vendors/clio-extension/project/schemas/decisions.schema.json +31 -0
- package/vendors/clio-extension/project/schemas/evidence.schema.json +48 -0
- package/vendors/clio-extension/project/schemas/manifest.schema.json +102 -0
- package/vendors/clio-extension/project/schemas/outline.schema.json +67 -0
- package/vendors/clio-extension/project/schemas/section.schema.json +95 -0
- package/vendors/clio-extension/project/schemas/source.schema.json +73 -0
- package/vendors/clio-extension/project/schemas/state.schema.json +58 -0
- package/vendors/clio-extension/project/schemas/validation.schema.json +74 -0
- package/vendors/clio-extension/runtime/extension.test.ts +248 -0
- package/vendors/clio-extension/runtime/extension.ts +1321 -0
- package/vendors/clio-extension/runtime/json-schema.cjs +304 -0
- package/vendors/clio-extension/runtime/package.json +3 -0
- package/vendors/clio-extension/runtime/write-guard.json +21 -0
- package/vendors/clio-extension/skins/wtfp.json +20 -0
- package/vendors/codex/plugins/wtfp/.codex-plugin/plugin.json +1 -1
- package/vendors/codex/plugins/wtfp/.wtfp-generated.json +17 -13
- package/vendors/codex/plugins/wtfp/actions/research-gap.json +1 -1
- package/vendors/codex/plugins/wtfp/agents/wtfp-research-synthesizer.toml +1 -1
- package/vendors/codex/plugins/wtfp/plugin.json +1 -1
- package/vendors/codex/plugins/wtfp/roles/research-synthesizer.md +1 -1
- package/vendors/codex/plugins/wtfp/skills/wtfp-plan-section/references/actions.md +1 -1
- package/vendors/codex/plugins/wtfp/skills/wtfp-research-literature/references/actions.md +1 -1
- package/vendors/codex/plugins/wtfp/skills/wtfp-write-section/references/actions.md +1 -1
- package/vendors/codex/plugins/wtfp/tools/README.md +1 -1
- package/vendors/codex/plugins/wtfp/tools/package.json +1 -0
- package/vendors/codex/plugins/wtfp/workflows/plan-section.md +3 -2
- package/vendors/codex/plugins/wtfp/workflows/research-gap.md +2 -2
- package/vendors/codex/plugins/wtfp/workflows/write-section.md +1 -1
- package/vendors/copilot/.wtfp-generated.json +14 -14
- package/vendors/copilot/marketplace.json +2 -2
- package/vendors/copilot/plugins/wtfp/.claude-plugin/plugin.json +1 -1
- package/vendors/copilot/plugins/wtfp/.wtfp-generated.json +18 -14
- package/vendors/copilot/plugins/wtfp/actions/research-gap.json +1 -1
- package/vendors/copilot/plugins/wtfp/agents/wtfp-research-synthesizer.md +1 -1
- package/vendors/copilot/plugins/wtfp/commands/wtfp-plan-section.md +3 -2
- package/vendors/copilot/plugins/wtfp/commands/wtfp-write-section.md +1 -1
- package/vendors/copilot/plugins/wtfp/roles/research-synthesizer.md +1 -1
- package/vendors/copilot/plugins/wtfp/skills/wtfp-plan-section/references/actions.md +1 -1
- package/vendors/copilot/plugins/wtfp/skills/wtfp-research-literature/references/actions.md +1 -1
- package/vendors/copilot/plugins/wtfp/skills/wtfp-write-section/references/actions.md +1 -1
- package/vendors/copilot/plugins/wtfp/tools/README.md +1 -1
- package/vendors/copilot/plugins/wtfp/tools/package.json +1 -0
- package/vendors/copilot/plugins/wtfp/workflows/plan-section.md +3 -2
- package/vendors/copilot/plugins/wtfp/workflows/research-gap.md +2 -2
- package/vendors/copilot/plugins/wtfp/workflows/write-section.md +1 -1
- package/vendors/copilot/project/.github/agents/wtfp-research-synthesizer.agent.md +1 -1
- package/vendors/copilot/project/.github/skills/wtfp-plan-section/references/actions.md +1 -1
- package/vendors/copilot/project/.github/skills/wtfp-research-literature/references/actions.md +1 -1
- package/vendors/copilot/project/.github/skills/wtfp-write-section/references/actions.md +1 -1
- package/vendors/copilot/project/.github/wtfp/actions/research-gap.json +1 -1
- package/vendors/copilot/project/.github/wtfp/roles/research-synthesizer.md +1 -1
- package/vendors/copilot/project/.github/wtfp/skills/wtfp-plan-section/references/actions.md +1 -1
- package/vendors/copilot/project/.github/wtfp/skills/wtfp-research-literature/references/actions.md +1 -1
- package/vendors/copilot/project/.github/wtfp/skills/wtfp-write-section/references/actions.md +1 -1
- package/vendors/copilot/project/.github/wtfp/workflows/plan-section.md +3 -2
- package/vendors/copilot/project/.github/wtfp/workflows/research-gap.md +2 -2
- package/vendors/copilot/project/.github/wtfp/workflows/write-section.md +1 -1
- package/vendors/gemini/.wtfp-generated.json +24 -20
- package/vendors/gemini/actions/research-gap.json +1 -1
- package/vendors/gemini/agents/wtfp-research-synthesizer.md +1 -1
- package/vendors/gemini/commands/wtfp/discuss-section.toml +1 -1
- package/vendors/gemini/commands/wtfp/execute-outline.toml +1 -1
- package/vendors/gemini/commands/wtfp/insert-section.toml +1 -1
- package/vendors/gemini/commands/wtfp/list-assumptions.toml +1 -1
- package/vendors/gemini/commands/wtfp/plan-revision.toml +1 -1
- package/vendors/gemini/commands/wtfp/plan-section.toml +4 -3
- package/vendors/gemini/commands/wtfp/quick.toml +1 -1
- package/vendors/gemini/commands/wtfp/write-section.toml +2 -2
- package/vendors/gemini/gemini-extension.json +1 -1
- package/vendors/gemini/roles/research-synthesizer.md +1 -1
- package/vendors/gemini/skills/wtfp-plan-section/references/actions.md +1 -1
- package/vendors/gemini/skills/wtfp-research-literature/references/actions.md +1 -1
- package/vendors/gemini/skills/wtfp-write-section/references/actions.md +1 -1
- package/vendors/gemini/tools/README.md +1 -1
- package/vendors/gemini/tools/package.json +1 -0
- package/vendors/gemini/workflows/plan-section.md +3 -2
- package/vendors/gemini/workflows/research-gap.md +2 -2
- package/vendors/gemini/workflows/write-section.md +1 -1
- package/vendors/opencode/.wtfp-generated.json +23 -19
- package/vendors/opencode/actions/research-gap.json +1 -1
- package/vendors/opencode/agents/wtfp/research-synthesizer.md +1 -1
- package/vendors/opencode/commands/wtfp/discuss-section.md +1 -1
- package/vendors/opencode/commands/wtfp/execute-outline.md +1 -1
- package/vendors/opencode/commands/wtfp/insert-section.md +1 -1
- package/vendors/opencode/commands/wtfp/list-assumptions.md +1 -1
- package/vendors/opencode/commands/wtfp/plan-revision.md +1 -1
- package/vendors/opencode/commands/wtfp/plan-section.md +4 -3
- package/vendors/opencode/commands/wtfp/quick.md +1 -1
- package/vendors/opencode/commands/wtfp/write-section.md +2 -2
- package/vendors/opencode/roles/research-synthesizer.md +1 -1
- package/vendors/opencode/skills/wtfp-plan-section/references/actions.md +1 -1
- package/vendors/opencode/skills/wtfp-research-literature/references/actions.md +1 -1
- package/vendors/opencode/skills/wtfp-write-section/references/actions.md +1 -1
- package/vendors/opencode/tools/README.md +1 -1
- package/vendors/opencode/tools/package.json +1 -0
- package/vendors/opencode/workflows/plan-section.md +3 -2
- package/vendors/opencode/workflows/research-gap.md +2 -2
- package/vendors/opencode/workflows/write-section.md +1 -1
- package/vendors/plugin/.wtfp-generated.json +44 -40
- package/vendors/plugin/actions/research-gap.json +1 -1
- package/vendors/plugin/ai.iowarp.clio/agents/wtfp-research-synthesizer.md +1 -1
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/add-todo.md +6 -12
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/analyze-bib.md +9 -19
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/audit-milestone.md +7 -25
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/check-refs.md +9 -15
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/check-todos.md +9 -13
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/checkpoint.md +7 -27
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/create-outline.md +9 -25
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/discuss-section.md +7 -17
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/execute-outline.md +10 -27
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/help.md +2 -2
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/insert-section.md +7 -13
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/map-project.md +6 -14
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/new-paper.md +7 -17
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/pause-writing.md +6 -18
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/plan-milestone-gaps.md +7 -15
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/plan-section.md +12 -29
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/polish-prose.md +10 -15
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/quick.md +10 -15
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/research-gap.md +15 -23
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/resume-writing.md +7 -23
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/review-section.md +9 -19
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/settings.md +7 -9
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/submit-milestone.md +7 -25
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/verify-work.md +7 -15
- package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/write-section.md +11 -29
- package/vendors/plugin/compatibility/action-availability.json +16 -1
- package/vendors/plugin/plugin.json +7 -7
- package/vendors/plugin/roles/research-synthesizer.md +1 -1
- package/vendors/plugin/skills/wtfp-plan-section/references/actions.md +1 -1
- package/vendors/plugin/skills/wtfp-research-literature/references/actions.md +1 -1
- package/vendors/plugin/skills/wtfp-write-section/references/actions.md +1 -1
- package/vendors/plugin/tools/README.md +1 -1
- package/vendors/plugin/tools/package.json +1 -0
- package/vendors/plugin/workflows/plan-section.md +3 -2
- package/vendors/plugin/workflows/research-gap.md +2 -2
- package/vendors/plugin/workflows/write-section.md +1 -1
- /package/vendors/plugin/ai.iowarp.clio/{fleets → playbooks}/wtfp-draft-review.md +0 -0
- /package/vendors/plugin/ai.iowarp.clio/{fleets → playbooks}/wtfp-plan-section.md +0 -0
|
@@ -5,26 +5,25 @@ argument-hint: "[arguments]"
|
|
|
5
5
|
|
|
6
6
|
# Plan a section
|
|
7
7
|
|
|
8
|
-
@${pluginRoot}/project/README.md
|
|
9
8
|
@${pluginRoot}/skills/wtfp-plan-section/SKILL.md
|
|
10
|
-
@${pluginRoot}/skills/wtfp-plan-section/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://validations/*`, `project://sections/{section}`, `project://sections/{section}/context`, `project://sections/{section}/research`, `project://sections/{section}/summary`, `project://sources/{source}`, `project://evidence/{evidence}`.
|
|
15
13
|
Produce: `project://sections/{section}/plans/{plan}` (create), `project://validations/{validation}` (create), `project://checkpoints/{checkpoint}` (create), `project://sections/{section}` (update), `project://state` (update).
|
|
16
14
|
|
|
17
|
-
|
|
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
|
-
|
|
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. Resolve one section record, load its linked context, research, evidence, decisions, and outline constraints, and enumerate the bounded `project://validations/*` collection before any specialist dispatch.
|
|
24
22
|
2. Filter those records to candidates whose `subject_uri` is exactly `project://structure/outline` and whose `action_id` is exactly `create-outline`. A candidate is current only when `executed_at >= outline.updated_at`. Because the v1 validation schema carries no outline revision or content hash, disclose that this timestamp test is a conservative freshness proxy.
|
|
25
23
|
3. Require exactly one current candidate and require its `status` to be `passed`. Separately verify that the current outline and target section are consistent with all current locked and deferred author choices: honor locked choices and do not treat deferred choices as resolved. A missing, stale, ambiguous, or non-passing candidate, or a decision contradiction, blocks all specialist dispatch and every plan, section, state, or validation write. Only a recovery checkpoint may be proposed on this blocked path, and it may be written only after a complete record preview and explicit author approval.
|
|
26
|
-
4.
|
|
27
|
-
5.
|
|
24
|
+
4. For a literature-heavy section, first require a section-specific research artifact plus resolvable source/evidence records that cover the planned claims. If they are absent or insufficient, run `research-gap` with the configured CiteNexus backend when available, verify candidate metadata against the returned records, and stop planning with an explicit research checkpoint if evidence remains insufficient. Never invent citations or treat search candidates as verified sources.
|
|
25
|
+
5. Only after those prerequisites pass, delegate a bounded plan to `section-planner`, then require a fresh `plan-checker` pass over claim coverage, dependencies, file scope, citations, and decision fidelity. Dispatch the exact WTF-P specialist roles; generic coder and verifier roles do not satisfy this workflow.
|
|
26
|
+
6. At confirm_plan, preview the plan and validation; on approval link the plan, update section status to planned, and reconcile state. Create a checkpoint for unresolved judgment instead of bypassing the required checker.
|
|
28
27
|
|
|
29
28
|
## Safety and completion
|
|
30
29
|
|
|
@@ -32,30 +31,12 @@ Do not initialize a repository or run branch, stage, commit, merge, push, or pub
|
|
|
32
31
|
|
|
33
32
|
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.
|
|
34
33
|
|
|
35
|
-
|
|
34
|
+
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.
|
|
35
|
+
If desk tools are absent, follow `${pluginRoot}/workflows/plan-section.md` and `${pluginRoot}/project/README.md` with native tools and `ask_user` gates.
|
|
36
|
+
|
|
37
|
+
## Bound action contract
|
|
36
38
|
|
|
37
39
|
@${pluginRoot}/actions/plan-section.json
|
|
38
|
-
@${pluginRoot}/project/schemas/common.schema.json
|
|
39
|
-
@${pluginRoot}/project/schemas/checkpoint.schema.json
|
|
40
|
-
@${pluginRoot}/project/templates/checkpoint.json
|
|
41
|
-
@${pluginRoot}/project/schemas/config.schema.json
|
|
42
|
-
@${pluginRoot}/project/templates/config.json
|
|
43
|
-
@${pluginRoot}/project/schemas/decisions.schema.json
|
|
44
|
-
@${pluginRoot}/project/templates/decisions.json
|
|
45
|
-
@${pluginRoot}/project/schemas/evidence.schema.json
|
|
46
|
-
@${pluginRoot}/project/templates/evidence.json
|
|
47
|
-
@${pluginRoot}/project/schemas/manifest.schema.json
|
|
48
|
-
@${pluginRoot}/project/templates/manifest.json
|
|
49
|
-
@${pluginRoot}/project/schemas/outline.schema.json
|
|
50
|
-
@${pluginRoot}/project/templates/outline.json
|
|
51
|
-
@${pluginRoot}/project/schemas/section.schema.json
|
|
52
|
-
@${pluginRoot}/project/templates/section.json
|
|
53
|
-
@${pluginRoot}/project/schemas/source.schema.json
|
|
54
|
-
@${pluginRoot}/project/templates/source.json
|
|
55
|
-
@${pluginRoot}/project/schemas/state.schema.json
|
|
56
|
-
@${pluginRoot}/project/templates/state.json
|
|
57
|
-
@${pluginRoot}/project/schemas/validation.schema.json
|
|
58
|
-
@${pluginRoot}/project/templates/validation.json
|
|
59
40
|
|
|
60
41
|
## Invocation input
|
|
61
42
|
|
|
@@ -67,10 +48,12 @@ $ARGUMENTS
|
|
|
67
48
|
|
|
68
49
|
## Clio user-gate binding
|
|
69
50
|
|
|
70
|
-
|
|
51
|
+
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.
|
|
71
52
|
|
|
72
53
|
## Clio role-result binding
|
|
73
54
|
|
|
55
|
+
Dispatch the declared specialist roles using these exact Clio agent IDs: `wtfp-section-planner`, `wtfp-plan-checker`. Do not substitute generic coder or verifier agents. If a named agent is unavailable, report that blocker and stop instead of silently changing roles.
|
|
56
|
+
|
|
74
57
|
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.
|
|
75
58
|
|
|
76
59
|
<!-- Generated by WTF-P adapter compiler v5 from protocol/actions/plan-section; do not edit. -->
|
|
@@ -5,18 +5,16 @@ argument-hint: "[arguments]"
|
|
|
5
5
|
|
|
6
6
|
# Polish prose
|
|
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://decisions`, `project://paper/{artifact}`.
|
|
15
13
|
Produce: `project://paper/{artifact}` (update), `project://validations/{validation}` (create).
|
|
16
14
|
|
|
17
|
-
|
|
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
|
-
|
|
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,18 +28,13 @@ 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
|
-
|
|
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
|
+
After changing a linked section manuscript, call `extension_wtfp__measure_section` with that section ID; it persists the desk's body-word count in the section and state.
|
|
33
|
+
If desk tools are absent, follow `${pluginRoot}/workflows/polish-prose.md` and `${pluginRoot}/project/README.md` with native tools and `ask_user` gates.
|
|
34
|
+
|
|
35
|
+
## Bound action contract
|
|
34
36
|
|
|
35
37
|
@${pluginRoot}/actions/polish-prose.json
|
|
36
|
-
@${pluginRoot}/project/schemas/common.schema.json
|
|
37
|
-
@${pluginRoot}/project/schemas/config.schema.json
|
|
38
|
-
@${pluginRoot}/project/templates/config.json
|
|
39
|
-
@${pluginRoot}/project/schemas/decisions.schema.json
|
|
40
|
-
@${pluginRoot}/project/templates/decisions.json
|
|
41
|
-
@${pluginRoot}/project/schemas/manifest.schema.json
|
|
42
|
-
@${pluginRoot}/project/templates/manifest.json
|
|
43
|
-
@${pluginRoot}/project/schemas/validation.schema.json
|
|
44
|
-
@${pluginRoot}/project/templates/validation.json
|
|
45
38
|
|
|
46
39
|
## Invocation input
|
|
47
40
|
|
|
@@ -53,10 +46,12 @@ $ARGUMENTS
|
|
|
53
46
|
|
|
54
47
|
## Clio user-gate binding
|
|
55
48
|
|
|
56
|
-
|
|
49
|
+
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.
|
|
57
50
|
|
|
58
51
|
## Clio role-result binding
|
|
59
52
|
|
|
53
|
+
Dispatch the declared specialist roles using these exact Clio agent IDs: `wtfp-prose-polisher`. Do not substitute generic coder or verifier agents. If a named agent is unavailable, report that blocker and stop instead of silently changing roles.
|
|
54
|
+
|
|
60
55
|
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.
|
|
61
56
|
|
|
62
57
|
<!-- Generated by WTF-P adapter compiler v5 from protocol/actions/polish-prose; do not edit. -->
|
|
@@ -5,18 +5,16 @@ argument-hint: "[arguments]"
|
|
|
5
5
|
|
|
6
6
|
# Make a quick writing change
|
|
7
7
|
|
|
8
|
-
@${pluginRoot}/project/README.md
|
|
9
8
|
@${pluginRoot}/skills/wtfp-write-section/SKILL.md
|
|
10
|
-
@${pluginRoot}/skills/wtfp-write-section/references/actions.md
|
|
11
9
|
|
|
12
10
|
## Record contract
|
|
13
11
|
|
|
14
12
|
Read: `project://manifest`, `project://state`, `project://decisions`, `project://sections/{section}`, `project://paper/{artifact}`.
|
|
15
13
|
Produce: `project://paper/{artifact}` (update), `project://sections/{section}` (update), `project://state` (update).
|
|
16
14
|
|
|
17
|
-
|
|
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
|
-
|
|
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,18 +28,13 @@ 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
|
-
|
|
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
|
+
After changing a linked section manuscript, call `extension_wtfp__measure_section` with that section ID; it persists the desk's body-word count in the section and state.
|
|
33
|
+
If desk tools are absent, follow `${pluginRoot}/workflows/quick.md` and `${pluginRoot}/project/README.md` with native tools and `ask_user` gates.
|
|
34
|
+
|
|
35
|
+
## Bound action contract
|
|
34
36
|
|
|
35
37
|
@${pluginRoot}/actions/quick.json
|
|
36
|
-
@${pluginRoot}/project/schemas/common.schema.json
|
|
37
|
-
@${pluginRoot}/project/schemas/decisions.schema.json
|
|
38
|
-
@${pluginRoot}/project/templates/decisions.json
|
|
39
|
-
@${pluginRoot}/project/schemas/manifest.schema.json
|
|
40
|
-
@${pluginRoot}/project/templates/manifest.json
|
|
41
|
-
@${pluginRoot}/project/schemas/section.schema.json
|
|
42
|
-
@${pluginRoot}/project/templates/section.json
|
|
43
|
-
@${pluginRoot}/project/schemas/state.schema.json
|
|
44
|
-
@${pluginRoot}/project/templates/state.json
|
|
45
38
|
|
|
46
39
|
## Invocation input
|
|
47
40
|
|
|
@@ -53,10 +46,12 @@ $ARGUMENTS
|
|
|
53
46
|
|
|
54
47
|
## Clio user-gate binding
|
|
55
48
|
|
|
56
|
-
|
|
49
|
+
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.
|
|
57
50
|
|
|
58
51
|
## Clio role-result binding
|
|
59
52
|
|
|
53
|
+
Dispatch the declared specialist roles using these exact Clio agent IDs: `wtfp-section-writer`. Do not substitute generic coder or verifier agents. If a named agent is unavailable, report that blocker and stop instead of silently changing roles.
|
|
54
|
+
|
|
60
55
|
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.
|
|
61
56
|
|
|
62
57
|
<!-- Generated by WTF-P adapter compiler v5 from protocol/actions/quick; do not edit. -->
|
|
@@ -5,23 +5,21 @@ argument-hint: "[arguments]"
|
|
|
5
5
|
|
|
6
6
|
# Research a section gap
|
|
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://config`, `project://decisions`, `project://structure/outline`, `project://sections/{section}`, `project://sections/{section}/context`, `project://sources/{source}`, `project://evidence/{evidence}`.
|
|
15
13
|
Produce: `project://sources/{source}` (create), `project://evidence/{evidence}` (create), `project://sections/{section}/research` (create), `project://sections/{section}` (update).
|
|
16
14
|
|
|
17
|
-
|
|
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
|
-
|
|
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. Resolve the research question and section scope against locked/deferred decisions; agree on depth and source constraints.
|
|
24
|
-
2.
|
|
22
|
+
2. Prefer an operator-configured, trusted read-only CiteNexus MCP connection for bounded public metadata searches when the host has already authorized it. In an explicitly selected full-auto host session for this research action, the bundled CiteNexus dispatcher may also search the free no-key public indexes `crossref`, `datacite`, `europe_pmc`, and `arxiv` without a second per-query author gate; use only selected relevant indexes with an explicit `--providers` list. Record provider IDs, queries, date, and result limits; never send unpublished manuscript text or private notes as search terms. For any other route, first obtain explicit author approval naming the providers and bounded query set. Results remain candidates and this action performs no bibliography write. Verify source identity and inspection depth, and separate source records from claim-level evidence.
|
|
25
23
|
3. Synthesize supported, conflicting, and missing evidence into a Markdown research artifact; link new records and disclose limitations.
|
|
26
24
|
|
|
27
25
|
## Bundled tool execution
|
|
@@ -32,7 +30,7 @@ The declared `tool.execute` effect authorises exactly one command, run from the
|
|
|
32
30
|
node ${pluginRoot}/tools/wtfp-tool.js [--offline] <command> [arguments]
|
|
33
31
|
```
|
|
34
32
|
|
|
35
|
-
Run it with `list` first to read the declared commands, their arguments, their bounds, and the effects each one applies; `${pluginRoot}/tools/README.md` carries the same table. A command whose effects include `network.*` performs outbound requests.
|
|
33
|
+
Run it with `list` first to read the declared commands, their arguments, their bounds, and the effects each one applies; `${pluginRoot}/tools/README.md` carries the same table. A command whose effects include `network.*` performs outbound requests. Pass `--offline` (or set `WTFP_TOOL_OFFLINE=1`) until the provider/query gate is approved, except for this action's explicit full-auto public-index route. On that route omit `--offline` only for `citation-search --backend=cite-nexus` with bounded queries and `--providers` drawn from `crossref,datacite,europe_pmc,arxiv`; never override an operator-set offline flag or a host refusal. Never execute another module in this package, never pass a logical `project://` or `wtfp://` URI as a shell argument, and treat every returned record as candidate evidence until it is verified and written to a source or evidence record.
|
|
36
34
|
|
|
37
35
|
## Safety and completion
|
|
38
36
|
|
|
@@ -40,24 +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
|
-
|
|
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/research-gap.md` and `${pluginRoot}/project/README.md` with native tools and `ask_user` gates.
|
|
43
|
+
|
|
44
|
+
## Bound action contract
|
|
44
45
|
|
|
45
46
|
@${pluginRoot}/actions/research-gap.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
47
|
|
|
62
48
|
## Invocation input
|
|
63
49
|
|
|
@@ -69,10 +55,16 @@ $ARGUMENTS
|
|
|
69
55
|
|
|
70
56
|
## Clio user-gate binding
|
|
71
57
|
|
|
72
|
-
|
|
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.
|
|
59
|
+
|
|
60
|
+
## Clio CiteNexus binding
|
|
61
|
+
|
|
62
|
+
In full-auto, the main agent first calls `gateway(op="find", query="cite-nexus")`. If a CiteNexus server is present and its tools are admitted as read-class through the operator's user configuration, call `gateway(op="describe", capability="<search-papers capability>")`, then `gateway(op="call", capability="<search-papers capability>", args={...})` with bounded public metadata queries. Use the capability name and argument schema returned by the gateway, not a guessed name. MCP connections are session-owned and unavailable in delegated workers, so pass the returned candidates and provenance to `wtfp-research-synthesizer` instead of asking that worker to discover the MCP server. This user-configured read connection is prior authorization for those searches; do not call `ask_user` again for each query. If no read-class CiteNexus connection is available and no gateway call has been refused, full-auto may instead run the bundled `citation-search --backend=cite-nexus` through its declared dispatcher with bounded public queries and an explicit `--providers` list containing only `crossref`, `datacite`, `europe_pmc`, or `arxiv`; pass those candidates to the same specialist. An operator-set offline flag, unavailable companion, or host refusal stops this route. Other providers and modes follow the declared user gate. Never bypass a gateway refusal by rerunning the same denied request through `bash`. Record the exact provider IDs, queries, limits, date, and provenance; verify each retained candidate before citing it.
|
|
73
63
|
|
|
74
64
|
## Clio role-result binding
|
|
75
65
|
|
|
66
|
+
Dispatch the declared specialist roles using these exact Clio agent IDs: `wtfp-research-synthesizer`. Do not substitute generic coder or verifier agents. If a named agent is unavailable, report that blocker and stop instead of silently changing roles.
|
|
67
|
+
|
|
76
68
|
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.
|
|
77
69
|
|
|
78
70
|
<!-- Generated by WTF-P adapter compiler v5 from protocol/actions/research-gap; do not edit. -->
|
|
@@ -5,18 +5,16 @@ argument-hint: "[arguments]"
|
|
|
5
5
|
|
|
6
6
|
# Resume writing
|
|
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://config`, `project://state`, `project://decisions`, `project://structure/outline`, `project://checkpoints/{checkpoint}`, `project://sections/{section}`, `project://sections/{section}/plans/{plan}`, `project://sections/{section}/reviews/{review}`, `project://sections/{section}/handoff`, `project://sections/{section}/summary`, `project://validations/{validation}`, `project://paper/{artifact}`.
|
|
15
13
|
Produce: `project://checkpoints/{checkpoint}` (update), `project://state` (update).
|
|
16
14
|
|
|
17
|
-
|
|
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
|
-
|
|
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
|
|
|
@@ -32,26 +30,12 @@ Do not initialize a repository or run branch, stage, commit, merge, push, or pub
|
|
|
32
30
|
|
|
33
31
|
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.
|
|
34
32
|
|
|
35
|
-
|
|
33
|
+
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.
|
|
34
|
+
If desk tools are absent, follow `${pluginRoot}/workflows/resume-writing.md` and `${pluginRoot}/project/README.md` with native tools and `ask_user` gates.
|
|
35
|
+
|
|
36
|
+
## Bound action contract
|
|
36
37
|
|
|
37
38
|
@${pluginRoot}/actions/resume-writing.json
|
|
38
|
-
@${pluginRoot}/project/schemas/common.schema.json
|
|
39
|
-
@${pluginRoot}/project/schemas/checkpoint.schema.json
|
|
40
|
-
@${pluginRoot}/project/templates/checkpoint.json
|
|
41
|
-
@${pluginRoot}/project/schemas/config.schema.json
|
|
42
|
-
@${pluginRoot}/project/templates/config.json
|
|
43
|
-
@${pluginRoot}/project/schemas/decisions.schema.json
|
|
44
|
-
@${pluginRoot}/project/templates/decisions.json
|
|
45
|
-
@${pluginRoot}/project/schemas/manifest.schema.json
|
|
46
|
-
@${pluginRoot}/project/templates/manifest.json
|
|
47
|
-
@${pluginRoot}/project/schemas/outline.schema.json
|
|
48
|
-
@${pluginRoot}/project/templates/outline.json
|
|
49
|
-
@${pluginRoot}/project/schemas/section.schema.json
|
|
50
|
-
@${pluginRoot}/project/templates/section.json
|
|
51
|
-
@${pluginRoot}/project/schemas/state.schema.json
|
|
52
|
-
@${pluginRoot}/project/templates/state.json
|
|
53
|
-
@${pluginRoot}/project/schemas/validation.schema.json
|
|
54
|
-
@${pluginRoot}/project/templates/validation.json
|
|
55
39
|
|
|
56
40
|
## Invocation input
|
|
57
41
|
|
|
@@ -63,6 +47,6 @@ $ARGUMENTS
|
|
|
63
47
|
|
|
64
48
|
## Clio user-gate binding
|
|
65
49
|
|
|
66
|
-
|
|
50
|
+
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
51
|
|
|
68
52
|
<!-- Generated by WTF-P adapter compiler v5 from protocol/actions/resume-writing; do not edit. -->
|
|
@@ -5,18 +5,16 @@ argument-hint: "[arguments]"
|
|
|
5
5
|
|
|
6
6
|
# Review a section
|
|
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://decisions`, `project://structure/outline`, `project://sections/{section}`, `project://sections/{section}/context`, `project://sections/{section}/plans/{plan}`, `project://sections/{section}/research`, `project://sections/{section}/summary`, `project://evidence/{evidence}`, `project://paper/{artifact}`.
|
|
15
13
|
Produce: `project://sections/{section}/reviews/{review}` (create), `project://validations/{validation}` (create), `project://sections/{section}` (update).
|
|
16
14
|
|
|
17
|
-
|
|
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
|
-
|
|
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
|
|
|
@@ -31,22 +29,12 @@ Do not initialize a repository or run branch, stage, commit, merge, push, or pub
|
|
|
31
29
|
|
|
32
30
|
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.
|
|
33
31
|
|
|
34
|
-
|
|
32
|
+
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.
|
|
33
|
+
If desk tools are absent, follow `${pluginRoot}/workflows/review-section.md` and `${pluginRoot}/project/README.md` with native tools and `ask_user` gates.
|
|
34
|
+
|
|
35
|
+
## Bound action contract
|
|
35
36
|
|
|
36
37
|
@${pluginRoot}/actions/review-section.json
|
|
37
|
-
@${pluginRoot}/project/schemas/common.schema.json
|
|
38
|
-
@${pluginRoot}/project/schemas/decisions.schema.json
|
|
39
|
-
@${pluginRoot}/project/templates/decisions.json
|
|
40
|
-
@${pluginRoot}/project/schemas/evidence.schema.json
|
|
41
|
-
@${pluginRoot}/project/templates/evidence.json
|
|
42
|
-
@${pluginRoot}/project/schemas/manifest.schema.json
|
|
43
|
-
@${pluginRoot}/project/templates/manifest.json
|
|
44
|
-
@${pluginRoot}/project/schemas/outline.schema.json
|
|
45
|
-
@${pluginRoot}/project/templates/outline.json
|
|
46
|
-
@${pluginRoot}/project/schemas/section.schema.json
|
|
47
|
-
@${pluginRoot}/project/templates/section.json
|
|
48
|
-
@${pluginRoot}/project/schemas/validation.schema.json
|
|
49
|
-
@${pluginRoot}/project/templates/validation.json
|
|
50
38
|
|
|
51
39
|
## Invocation input
|
|
52
40
|
|
|
@@ -58,10 +46,12 @@ $ARGUMENTS
|
|
|
58
46
|
|
|
59
47
|
## Clio user-gate binding
|
|
60
48
|
|
|
61
|
-
|
|
49
|
+
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.
|
|
62
50
|
|
|
63
51
|
## Clio role-result binding
|
|
64
52
|
|
|
53
|
+
Dispatch the declared specialist roles using these exact Clio agent IDs: `wtfp-section-reviewer`. Do not substitute generic coder or verifier agents. If a named agent is unavailable, report that blocker and stop instead of silently changing roles.
|
|
54
|
+
|
|
65
55
|
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.
|
|
66
56
|
|
|
67
57
|
<!-- Generated by WTF-P adapter compiler v5 from protocol/actions/review-section; do not edit. -->
|
|
@@ -5,18 +5,16 @@ argument-hint: "[arguments]"
|
|
|
5
5
|
|
|
6
6
|
# Manage project settings
|
|
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://config`.
|
|
15
13
|
Produce: `project://config` (update).
|
|
16
14
|
|
|
17
|
-
|
|
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
|
-
|
|
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,12 +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
|
-
|
|
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/settings.md` and `${pluginRoot}/project/README.md` with native tools and `ask_user` gates.
|
|
33
|
+
|
|
34
|
+
## Bound action contract
|
|
34
35
|
|
|
35
36
|
@${pluginRoot}/actions/settings.json
|
|
36
|
-
@${pluginRoot}/project/schemas/common.schema.json
|
|
37
|
-
@${pluginRoot}/project/schemas/config.schema.json
|
|
38
|
-
@${pluginRoot}/project/templates/config.json
|
|
39
37
|
|
|
40
38
|
## Invocation input
|
|
41
39
|
|
|
@@ -47,6 +45,6 @@ $ARGUMENTS
|
|
|
47
45
|
|
|
48
46
|
## Clio user-gate binding
|
|
49
47
|
|
|
50
|
-
|
|
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.
|
|
51
49
|
|
|
52
50
|
<!-- Generated by WTF-P adapter compiler v5 from protocol/actions/settings; do not edit. -->
|
|
@@ -5,18 +5,16 @@ argument-hint: "[arguments]"
|
|
|
5
5
|
|
|
6
6
|
# Archive a milestone
|
|
7
7
|
|
|
8
|
-
@${pluginRoot}/project/README.md
|
|
9
8
|
@${pluginRoot}/skills/wtfp-deliver-research/SKILL.md
|
|
10
|
-
@${pluginRoot}/skills/wtfp-deliver-research/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://archives/{archive}/{artifact}` (archive), `project://manifest` (update), `project://state` (update), `project://validations/{validation}` (create).
|
|
16
14
|
|
|
17
|
-
|
|
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
|
-
|
|
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,28 +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
|
-
|
|
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/submit-milestone.md` and `${pluginRoot}/project/README.md` with native tools and `ask_user` gates.
|
|
33
|
+
|
|
34
|
+
## Bound action contract
|
|
34
35
|
|
|
35
36
|
@${pluginRoot}/actions/submit-milestone.json
|
|
36
|
-
@${pluginRoot}/project/schemas/common.schema.json
|
|
37
|
-
@${pluginRoot}/project/schemas/config.schema.json
|
|
38
|
-
@${pluginRoot}/project/templates/config.json
|
|
39
|
-
@${pluginRoot}/project/schemas/decisions.schema.json
|
|
40
|
-
@${pluginRoot}/project/templates/decisions.json
|
|
41
|
-
@${pluginRoot}/project/schemas/evidence.schema.json
|
|
42
|
-
@${pluginRoot}/project/templates/evidence.json
|
|
43
|
-
@${pluginRoot}/project/schemas/manifest.schema.json
|
|
44
|
-
@${pluginRoot}/project/templates/manifest.json
|
|
45
|
-
@${pluginRoot}/project/schemas/outline.schema.json
|
|
46
|
-
@${pluginRoot}/project/templates/outline.json
|
|
47
|
-
@${pluginRoot}/project/schemas/section.schema.json
|
|
48
|
-
@${pluginRoot}/project/templates/section.json
|
|
49
|
-
@${pluginRoot}/project/schemas/source.schema.json
|
|
50
|
-
@${pluginRoot}/project/templates/source.json
|
|
51
|
-
@${pluginRoot}/project/schemas/state.schema.json
|
|
52
|
-
@${pluginRoot}/project/templates/state.json
|
|
53
|
-
@${pluginRoot}/project/schemas/validation.schema.json
|
|
54
|
-
@${pluginRoot}/project/templates/validation.json
|
|
55
37
|
|
|
56
38
|
## Invocation input
|
|
57
39
|
|
|
@@ -63,6 +45,6 @@ $ARGUMENTS
|
|
|
63
45
|
|
|
64
46
|
## Clio user-gate binding
|
|
65
47
|
|
|
66
|
-
|
|
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.
|
|
67
49
|
|
|
68
50
|
<!-- Generated by WTF-P adapter compiler v5 from protocol/actions/submit-milestone; do not edit. -->
|