| name | plan-work |
| description | Backend execution planning skill used after PRD or bug context exists and before coding. Produces an implementation-ready, risk-aware, validation-ready backend plan with explicit checkpoints. |
| version | 2 |
| owner | backend |
plan-work
Description
plan-work is a backend execution planning skill.
It converts existing backend requirement context into a minimal, executable plan.
It does not implement code, perform full review, write PRD, or run broad architecture redesign.
Purpose
Use this skill to produce an implementation-ready backend execution plan before coding, including:
- task classification (primary + secondary)
- impacted backend modules/layers
- risk level and uncertainty visibility
- minimal ordered skill/action sequence
- validation strategy and concrete commands
- explicit escalation checkpoints
When to Use
Use when all conditions are true:
- Backend PRD exists or bug context exists.
- Backend scope is known but execution order is not finalized.
- Coding has not started, or has not passed the “meaningful implementation” stage.
- A reusable plan is needed for implementation/review/verification handoff.
When Not to Use
Do not use when any condition is true:
- Requirement discovery is still open (use
create-prd first).
- Repository/module context is unknown (use
scan-project-backend first).
- Task is trivial and isolated (single-file tiny fix with obvious validation).
- Primary request is implementation, refactor execution, or code review output.
- Task is non-backend planning.
Trigger Conditions
Trigger this skill when user intent matches one of these patterns:
- “plan backend work before coding”
- “sequence backend implementation steps”
- “define backend risk/validation checkpoints”
- “convert PRD/bug context into execution plan”
Inputs
Required inputs:
- Requirement source: backend PRD or bug context.
- Backend scope snapshot: affected packages/modules/endpoints/components.
- Constraints:
AGENTS.md, backend/AGENTS.md, and task-specific limits.
Recommended inputs (must request/flag if missing):
- Non-goals / out-of-scope items.
- Known risks and open questions.
- Test/CI context (available suites, command constraints, runtime limitations).
- Architecture assumptions already approved.
- Dependencies on other docs/skills (e.g.,
scan-project-backend, verify-change).
If required input is missing:
- Stop sequence expansion.
- Add explicit markers in output:
REQUIRES CONFIRMATION
OPEN QUESTION
RISKY ASSUMPTION
Task Classification Rules
Classify task type using evidence from PRD/bug context and existing backend behavior.
Allowed Types
feature
bug
security
refactor
docs
Classification Method
- Assign Primary Type = type that drives acceptance criteria and core behavior change.
- Assign Secondary Type(s) only if they add required work, not optional cleanup.
- For each assigned type, cite the evidence in one line.
- If evidence conflicts, mark
OPEN QUESTION and do not force classification.
Sequence/Validation Impact by Type
feature: emphasize integration path, contract alignment, regression checks.
bug: emphasize reproduction path, fix target, non-regression checks.
security: emphasize threat boundary, auth/permission/token checks, stricter escalation.
refactor: emphasize behavior parity checks and scope guardrails.
docs: emphasize documentation correctness and linkage to implemented behavior.
Impacted Modules and Layer Rules
Identify impact at layer/module level. Use only evidence-backed scope.
Required Layer Check
Evaluate each area explicitly as: Impacted, Possibly Impacted, or Not Impacted:
- Controller / API route surface
- Service / business logic
- Repository / persistence/query behavior
- DTO / request-response contract
- Mapper / conversion logic
- Validation surface (
jakarta.validation, custom validators)
- Security/auth/token/permission surface
- Integration/external API/cache/scheduler/config surface
Scope Integrity
- Include only layers linked to requirement or bug evidence.
- Mark uncertain areas as
Possibly Impacted + OPEN QUESTION.
- Do not convert uncertain areas into mandatory work without confirmation.
Risk Rules
Assign one overall risk level: Low / Medium / High.
Baseline Heuristic
Low: localized change, clear behavior, no contract/security/data-flow impact.
Medium: multi-layer coordination or moderate uncertainty.
High: schema/API/security/dependency/external integration changes or high ambiguity.
Risk Escalators
Any of the following raises risk and requires explicit mention:
- auth/permission/token flow changes
- public API contract changes
- DB schema/data migration/query semantic change
- dependency/version/plugin change
- external integration behavior changes
- broad cross-module refactor
- missing reproduction/acceptance criteria
If risk evidence is incomplete:
- Keep conservative level (
Medium or High).
- Mark
RISKY ASSUMPTION and checkpoint before implementation.
Planning Steps
Follow steps in order. Keep output minimal and executable.
- Read context + constraints
- Confirm requirement source, scope, and hard constraints.
- Classify task
- Produce primary/secondary type with evidence.
- Map impacted scope
- List impacted layers/modules and uncertainty markers.
- Set risk level
- Assign level + top risk drivers.
- Build minimal ordered sequence
- Only include steps required to deliver scoped objective.
- Each step must include: owner skill/action, goal, exit signal.
- Define validation strategy
- Map checks to task type and risk level.
- Provide runnable command set (prefer
backend/).
- Define escalation checkpoints
- Add explicit “stop-and-confirm” gates.
- Run planning verification
- Ensure plan is in-scope, consistent, and handoff-ready.
Sequence Design Rules
Design sequence as shortest valid path, not idealized full lifecycle.
Use alias-first wording when describing workflow actors in plan output:
- Format:
<Role Alias> (<Technical Skill Name>)
- Example:
PJM-Discovery (scan-project-backend)
- If alias wording and technical skill name conflict, technical skill name is authoritative.
- Use
scan-project-backend only when module/flow evidence is insufficient.
- Use
create-prd only when requirement intent/acceptance is incomplete.
- Schedule implementation step only after scope/risk/validation are defined.
- Add
review/verify steps when risk is Medium/High or change is cross-layer.
- Do not insert speculative optimization or unrelated cleanup.
- Every step must have a clear prerequisite and completion condition.
Validation Strategy Rules
Validation plan must be concrete and risk-aligned.
Minimum Required Content
- Validation objective per check.
- Exact commands (or clearly flagged non-runnable checks).
- Scope of each check (targeted vs broader).
- Pass criteria.
- Unverified items (if any).
Minimal Validation Strategy
Use smallest check set that can detect likely regressions for current scope.
- Prefer targeted tests first.
- Expand to broader checks when risk or impact increases.
Escalate Validation Intensity
Use stronger validation when:
- risk is
High
- multiple layers are impacted
- auth/security/contract/persistence is involved
Command Reliability Rule
If command runnability cannot be confirmed:
- label
REQUIRES CONFIRMATION
- provide reason (missing tool/env/path)
- provide fallback candidate command if known
Escalation Rules
Insert explicit checkpoint and stop progression when any condition is met:
- API contract-breaking risk.
- Schema/migration/data semantic change.
- Auth/security/token/permission flow change.
- New dependency or version change.
- Scope expansion beyond stated objective.
- Requirement ambiguity blocking reliable implementation order.
- Any
High risk with unresolved assumptions.
Checkpoint format:
CHECKPOINT: <decision>
WHY: <risk/evidence>
NEEDS CONFIRMATION FROM: user/reviewer
Output Contract
Output must be directly reusable by implementation/review/verification skills.
Provide sections in this exact order:
Task Classification Summary
- Primary type, secondary type(s), evidence.
Impacted Scope
- Layer/module list with impacted status.
Risk Summary
- risk level, top drivers, uncertainty markers.
Ordered Execution Plan
- numbered minimal steps with rationale and exit signal.
Validation Plan
- commands/checks, objectives, pass criteria, unverified items.
Escalation Checkpoints
- explicit stop-and-confirm items.
Assumptions and Unknowns
REQUIRES CONFIRMATION, OPEN QUESTION, RISKY ASSUMPTION, OUT OF SCOPE.
Boundaries
Strict boundaries for this skill:
- Do not implement code.
- Do not execute refactor/redesign work.
- Do not expand scope with opportunistic cleanup.
- Do not treat speculative work as required steps.
- Do not make risky technical decisions silently.
- Do not classify uncertain impact as confirmed without evidence.
Verification
Before finalizing the plan, verify all checks below:
- Sequence is logically ordered by dependency and risk.
- Validation intensity matches task type and risk level.
- Escalation points cover all high-impact decision boundaries.
- No step pushes work outside stated scope/non-goals.
- Commands are backend-local where possible and syntactically runnable.
- Unknowns are explicitly labeled, not implied.
Failure / Uncertainty Handling
When information is incomplete, use strict labels:
REQUIRES CONFIRMATION: blocking decision requiring user/reviewer confirmation.
OPEN QUESTION: missing fact that affects plan quality but is not yet resolved.
RISKY ASSUMPTION: assumption that can alter design/validation materially.
OUT OF SCOPE: tempting but excluded work.
Rules:
- Never hide uncertainty.
- Never continue to detailed sequencing past unresolved blocking items.
- Offer at most one conservative default path when needed, marked as assumption-based.
What Not to Do
- Do not rewrite PRD.
- Do not perform code review scoring.
- Do not run implementation or migration commands as part of planning output.
- Do not propose architecture redesign unless explicitly requested and confirmed.
- Do not provide generic advice without mapping to actual backend layers and checks.