II.
Page JSON
Structured · livepage:docs-harness-features-backlog-gaps-tools-capabilities-gap-tools-018
GAP-TOOLS-018: Structured Planning Phase in Process Definitions json
Inspect the normalized record payload exactly as the atlas UI reads it.
{
"id": "page:docs-harness-features-backlog-gaps-tools-capabilities-gap-tools-018",
"_kind": "Page",
"_file": "wiki/docs/harness-features-backlog/gaps/tools-capabilities/gap-tools-018.md",
"_cluster": "wiki",
"attributes": {
"nodeKind": "Page",
"sourcePath": "docs/harness-features-backlog/gaps/tools-capabilities/GAP-TOOLS-018.md",
"sourceKind": "repo-docs",
"title": "GAP-TOOLS-018: Structured Planning Phase in Process Definitions",
"displayName": "GAP-TOOLS-018: Structured Planning Phase in Process Definitions",
"slug": "docs/harness-features-backlog/gaps/tools-capabilities/gap-tools-018",
"articlePath": "wiki/docs/harness-features-backlog/gaps/tools-capabilities/GAP-TOOLS-018.md",
"article": "\n# GAP-TOOLS-018: Structured Planning Phase in Process Definitions\n\n| Field | Value |\n|-------|-------|\n| Category | tools-capabilities |\n| Priority | High |\n| Effort | M |\n| Status | Partial |\n\n## Description\nFormalize a structured planning phase within process definitions where the orchestrator generates, validates, and commits to an execution plan before dispatching implementation effects. Currently `harness:plan` stops after Phase 1 but the plan structure is informal and not machine-readable.\n\n## Current State\nThe `harness:plan` alias stops after the first phase of orchestration, implying a plan-then-execute model. However, the plan output is unstructured text. Process definitions in `gsd/` have planning phases but they produce free-form artifacts. There is no schema for plans, no plan validation, and no plan-to-effect compilation step.\n\n## Target State\nA `PlanSchema` type defining structured plans with: ordered steps, estimated effort per step, dependency graph between steps, resource requirements (harness capabilities, tools needed), risk assessment. A `ctx.plan()` intrinsic that produces a validated plan. Plan-to-effect compilation that generates the effect dispatch sequence from the plan. Plan approval via breakpoint before execution begins.\n\n## Dependencies\n- [GAP-PROC-004](../process-composition/GAP-PROC-004.md) -- parameter schemas for plan step typing\n\n## Related Gaps\n- [GAP-USER-012](../user-experience/GAP-USER-012.md) -- plan mode and verification UX (depends on this gap, not a prerequisite)\n\n## Key Files\n| Component | Path |\n|-----------|------|\n| Process definitions | `plugins/babysitter/skills/babysit/process/` |\n| GSD phases | `plugins/babysitter/skills/babysit/process/gsd/` |\n| Runtime | `packages/sdk/src/runtime/` |\n| Harness create-run | `packages/sdk/src/cli/` |\n\n## Recommendation\nPhase 2-3 implementation. Define `PlanSchema` type. Add `ctx.plan()` intrinsic to `ProcessContext`. Implement plan validation and plan-to-effect compilation. Wire plan approval through breakpoint system.\n",
"documents": []
},
"outgoingEdges": [],
"incomingEdges": [
{
"from": "page:docs-harness-features-backlog",
"to": "page:docs-harness-features-backlog-gaps-tools-capabilities-gap-tools-018",
"kind": "contains_page"
}
]
}